Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

MartinChavez/HTML-CSS

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HTML/CSS: Basics

Use this tutorial as a guide to learn HTML and CSS. Each unit contains an annotated lesson that can assist you in developing your Web Development skills.

Topics

  • Basics
  • Divs
  • Fonts
  • Hexadecimal Colors
  • Images
  • Links
  • Selectors
  • The Box Model
  • Web Forms

HTML Basics

<!--HTML: Basics-->

<!--HTML: HyperText Markup Language -->
<!--HTML is the standard markup language used to create web pages-->

<!-- To add content, you should use HTML tags -->
<!-- These pre-defined tags, have opening and closing versions -->


<!-- <!DOCTYPE> tag -->
<!-- Defines the HTML Version the browser should use to display the HTML Tags-->
<!-- By writing <!DOCTYPE html> and not specifying the version, the browser will use the latest version-->
<!DOCTYPE html>


<!-- <html> tag -->
<!-- All of the HTML tags are placed inside the <html> tag -->
<!-- You should use it to organize all of the other tags for the Web Page -->
<html>

<!-- <head> tag -->
<!-- All the not-visible content of the web page should be contained on the <head> tag -->
<!-- You can use this tag to load scripts like CSS and Javascript -->

<!-- Nesting tags: HTML tags can contain other tags -->
<head lang="en"><!-- the <head> tag is called the parent tag (for <meta> and <title>) -->
    <meta charset="UTF-8">
    <!-- the <meta> tag is called a children tag (of <head>)-->
    <title>HTML Basics</title><!-- the <title> tag is called a children tag (of <head>) -->
</head>

<!-- <link> tag -->
<!-- Allows you to reference other files that work together with this file-->

<!-- The type attribute set to text/css lets the browser know you are loading a CSS file -->
<!-- The 'rel' attribute is an abbreviation for 'relationship' -->
<!-- The CSS selectors and rules are contained in the CSS file -->
<link rel="stylesheet" type="text/css" href="../CSS/Basics.css"><!-- The <link> is an empty tag, it doesn't have a closing tag -->


<!-- <body> tag -->
<!-- All the visible content of the web page should be contained in the <body> tag -->
<body>

<!-- <h*> headers -->

<!-- You can use heading tags to define your content hierarchy -->
<!-- Higher heading numbers mean the content that appears between the tags is less important -->

<!-- <h1> is an opening tag -->
<h1>Header H1</h1>
<!-- </h1> is an closing tag and has a slash before the tag name-->
<h2>Header H2</h2>

<h3>Header H3</h3>
<h4>Header H4</h4>

<!-- <p> paragraphs -->

<!-- You can use paragraph tags for non-heading text -->
<p>This is a paragraph</p>
<p>This is another paragraph</p>

<!-- <ul> Unordered List -->
<!-- You can use unordered list tags to display a list fo items -->
<ul>
    <!-- <li> list item -->
    <!-- Every list item needs to be put in a <li> tag -->
    <li>List Item 1</li>
    <li>List Item 2</li>
    <li>List Item 3</li>
</ul>

<!-- <ol> Ordered List -->
<!-- You can use ordered list tags to display a list of items in order -->
<ol>
    <!-- <li> list item -->
    <!-- Every list item needs to be put in a <li> tag -->
    <li>List Item 1</li>
    <li>List Item 2</li>
    <li>List Item 3</li>
</ol>

CSS Basics

/* CSS */

/* CSS is the language for describing the presentation of HTML elements */

/* Selectors*/
/* CSS elements that allow you to find HTML elements */

/* Selectors: Type*/
/* You can create a Type selectors by writing the tag name without <> brackets */
p {
    text-overline: 3;/* You can change any property of the tag */
}

/*Selector: Syntax*/
/*
selectorName {
    property: value;
}
*/

/* A single selector can change multiple properties*/
p {
    text-overline: 3;
    text-underline: dot-dash;
    color: red;
}

/* Selectors will select all matching tags on the page and apply the properties*/

/* Descendant Selectors */
/* They can be used to select tags only if they are children of another tag*/

ul li {
    font-size: 30px;
    color: darkgreen;
}

/* Pseudo Selectors*/
/* Pseudo-selector is a modifier that can be added to a selector to select a tag
only when a certain condition has occurred */
ul li:hover{
    color: pink;
}

/* Pseudo Selector: First Child*/
/* The :first-child pseudo-selector can be applied to narrow the amount of children selected */
ol li:first-child{
    color: lightcoral;
}

The Box Model

/* The Box Model */

/*Every tag shown in the body is contained in an invisible rectangle called Box*/
/*The box model is a way to describe the borders and spacing in between the boxes of each tag*/

/*Block-level tags*/

/*The content of block-level tags take up the entire width (horizontal space) of the container*/
/*Every box is pushed to the line below*/

/*Examples of block-level tags : */
/* h1 , h2,  h3,  p,  ul,  li*/

/*Inline-level tags*/
/*Every tag that is not block-level, is called inline-level/
/*The content of these tags do not take the entire width of the container */

/*Examples of inline-level tags: */
/* a, img , input, label*/

/*Converting block-level tags into inline-level tags*/
/*Allow you to display items horizontally instead of vertically*/

ul li {
    display: inline;
}

/*Box Model Parts*/

/*Content area*/
/*Contains the actual content (text, images, etc.)*/
/*It will take up as much vertical space as it needs to display the content inside*/

/*Padding*/
/*Padding is a layer on every edge of the content area*/
/*Padding can be added to the top, right, bottom or left of the content area*/

/*Border*/
/*Border can be added to the top, right, bottom or left of the padding*/

/*Margin*/
/*Border can be added to the top, right, bottom or left of the border*/

/*Box Model: Size*/
/*The full size of a box is calculated by adding all of these properties*/
/* Content Area width + padding-left + padding-right + border-left + border-right + margin-left + margin-right*/

/*Applying the box model properties*/
/*It is possible to add every property individually*/
/*Padding*/
h2 {
    padding-top: 4px;
    padding-bottom: 8px;
    padding-right: 9px;
    padding-left: 3px;
}

/*We can also add these properties with a single line*/
h2 {
    padding: 4px 9px 8px 3px;
    /*top right bottom left*/
}

Web Forms

<!-- Web Forms -->
<!-- A Form is an element that allows a web page to get input from a user -->

<!-- Forms usually contain labels, inputs, text areas and submit buttons -->
<!-- In general, the processing of a form's information requires a back-end service -->

<!-- <form> tag-->
<!-- You can use it to create a form and add elements inside of it -->
<form>
    <!-- <label> tag-->
    <!-- Describes the type of information the user should enter-->
    <label>Form</label>
    <input type="text"/>
    <!-- <input type="submit"> tag -->
    <!-- Sends all the information from the form to the server -->
    <input type="submit" value="Submit"/>
</form>
<br/>

<!-- Form <input> types -->
<!-- The type attribute sets the type of input fields that will be displayed -->
<!-- These are common <input> types -->
<form>
    <input type="text"/>
    <input type="checkbox"/>
    <input type="radio"/>
    <input type="file"/>
    <input type="password"/>
    <input type="submit">
</form>
/* Styling forms*/
/* labels and inputs are inline-level tags*/
/* In general, it is better to display one on top of the other like block-level tags*/
.styled-form label,input{
    display: block;
}
/*You can style the elements inside the form like any block-level tag*/
.styled-form label{
    margin-bottom: 10px;
}
.styled-form input{
    width: 500px;
    margin-bottom: 25px;
}

/* Attribute selectors */
/* A method to style a tag based on one of its attributes*/

/* Styling the submit button separately */
/* The submit button is an input tag so the previous input selector properties are affecting the way it is displayed */

/* In order to create this selector, you need: */
/* The name of the attribute and the value of the attribute */
.styled-form input[type=submit]{
    width: 120px;
    font-size: 30px;
}

/* Styling Inputs */
/* The container around an input is a border, so you can style it with the border property */
.styled-form input[type=text]{
    border: 2px solid #7facaa;
}

Run and Play

All the html files are linked to their respective CSS files. Open your browser, change the content and start learning!

Author

Martin Chavez

Continue Learning

About

HTML/CSS Tutorial

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  
Morty Proxy This is a proxified and sanitized view of the page, visit original site.