SlideShare una empresa de Scribd logo
1 de 41
Descargar para leer sin conexión
Introduction to

         &
   Andrew Christian
Obligatory Intro
                                                So, who is this guy?


•   Coding HTML since 1996

•   WordPress since 2004 (v1.0.2 Art Blakely)

•   New York WP Community since WordCamp
    NYC 2009.

•   Tadpole.cc - WordPress Hosting, Support,
    Training and Consulting
I’m assuming...

• You are somewhat familiar with previous
  versions of HTML and CSS .
• You know your way around a WordPress
  theme, but not necessarily hard-core dev.
A Little History
• HTML was created to link documents via
  HyperText (the “HT” in HTML)
• Quickly grew into a more rich markup
  language (the “ML”)
• Browser Wars: Microsoft vs. Netscape.
A Little History
• XHTML created in order to transition from
  HTML to XML
• XHTML required stricter coding standards.
• If not coded properly, it would break...
  Horribly.
A Little History
• 2002: W3C created XHTML 2.0
• 2004: Apple, Mozilla, and Opera created the
  WHATWG, when W3C shot down HTML5.
• 2007: W3C created HTML 5 working group.
• 2009: W3C abandons XHTML 2.0 in favor of
  HTML5.
HTML5 Philosophy
• Must be backwards compatible with older
  versions of HTML.
• Everything added or removed must be done
  so for a practical purpose.
• The process of deciding what goes in is an
  open process, involving blogs, twitter, etc.
Can we use it now?
• The spec is not 100% finalized, but is broken
  into “modules,” many of which are finalized.
• Most features are supported by all major
  browsers (Chrome, Firefox 4+, Safari, IE9+)
• Most features degrade gracefully in older
  browsers.
Document Heading
<!DOCTYPE html PUBLIC “=//W3C//DTD XHTML 1.0 Transitional//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml-1-transitional.dtd”>

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
lang="en">

<head>                                               <title>Page Title
goes hear</title>                           <meta http-equiv=”Content-
Type” content=”text/html; charset=iso-8859-1” />
<link rel=”stylesheet” href=”style.css” type=”text/css” />
<script src=”javascript.css” type=”text/javascript” />               </
head>
Document Heading
<!DOCTYPE html>

<html lang="en-us">

<head>

<title>Page Title goes hear</title>

<meta charset=”utf-8”>

<link rel=”stylesheet” href=”style.css”>
HTML Code Syntax

<IMG SRC=”image.png” ALT=”This is an image, Duh!” />



                   is the same as



  <Img sRc=image.png ALt=’This is an image, Duh!’>
New HTML Elements
• article     • footer




<                                  >
• aside       • header
• bdi         • hgroup
• command     • mark
• details     • nav
• summary     • ruby, rt, and rp
• figure       • section
• figcaption   • time
Changed Elements
•   <a> can now wrap around block elements.

•   <b> and <i> are back (but not presentational).

•   <cite> defined to be the title of a work.

•   <hr> is now a “paragraph-level thematic break.”

•   <small> is now for small-print, i.e., legal boilerplate.
Removed Elements
•   <big>

•   <center> and <font>

•   <strike> and <u>

•   <frame>, <frameset>, and <noframes>

•   <acronym> is now <abbr>

•   <applet> is now <object>
Blog Page Structure
<div id=”header”>
 <h1>Page Title</h1>
 <p>Tag Line text...</p>
</div>
<div id=”nav”>
 <ul>...list of nav links...</ul>
</div>
<div id=”sidebar”>...sidebar links...</div>
<div id=”content”>
 <div class=”article”>
  <h2>Article Title</h2>
  <p>Published on June 9, 2012.</p>
  <p>Article Content</p>
  <div class=”entry-meta”>...comments, permalink, etc...</div>
 </div>
</div>
<div id=”footer”>
Blog Page Structure
<header>
 <hgroup>
  <h1>Page Title</h1>
  <h2>Tag Line text...</h2>
 </hgroup>
</header>

<nav><ul>...list of nav links...</ul></nav>

<aside>...sidebar links...</aside>

<article>
 <header>
  <h1>Article Title</h1>
  <time datetime=”2012-06-09” pubdate”>Published on June 9, 2012.</time>
 </header>
 <p>Article Content</p>
 <footer>...comments, permalink, etc...</footer>
<header> & <hgroup>
•   When <header> is used outside of other
    elements, it’s assumed to be the page header.

•   When <header> is used inside of elements like
    <aside> and <article>

•   <header> isn’t necessary when an <h1> is the only
    element of the header.

•   Cannot be placed inside a <footer>, <address> or
    another <header> element.
<header> & <hgroup>
•   <header> allows you to group other content in
    with the heading, such as publication date, etc.

•   <hgroup> links together multiple headings into
    one header.

•   Great for headers that have multiple lines, or the
    Page Title with a Site Description.
<footer>
•    Just like <header>, you can use more than one
     <footer> on a page.
•    A footer typically, but not always, goes at the
     bottom of content.
•    For example, if you use a <footer> for next/
     previous blog post links, you can use
<article>
 <header>...</header>
 <footer>...Next/Previous nav links</footer>
 <p>...Content</p>
 <footer>...Next/Previous nav links</footer>
<nav>
•   Usually contains a <ul> list of links.

•   You can have more than one <nav> list on a page.

•   Placing the <nav> outside of other elements
    means it’s navigation across your site.

•   Placing <nav> inside an <article> means it’s
    navigation for that article only (useful on single
    post pages for Next/Previous links).
<article> and <section>
•   <article> should be a complete block of content
    that is wholly separate from other content.
•   <section> divides content into, yes, sections. A
    section does not stand on its own.
•   Think of <article> as something you might see in
    an RSS feed.
•   However, you can use <article> within another
    <article> tag. For example, comments could be in
    separate <article> tags inside of a blog post.
<aside>
•   Used for “Secondary Content”

•   Meant for content that is related to, but not
    necessarily important for understanding, content.

•   Can be used as a sidebar for a page.

•   Can also be used inside <article>, etc., for
    information related to the article.
<aside>
•   Used for “Secondary Content”

•   Meant for content that is related to, but not
    necessarily important for understanding, content.

•   Can be used as a sidebar for a page.

•   Can also be used inside <article>, etc., for
    information related to the article.
Forms - New Attributes
•   required

•   autofocus

•   placeholder

•   form

•   autocomplete

•   pattern
Forms - New Input Types
•   email                    •   tel (telephone)

•   date                     •   color

•   search                   •   number


•   New input types fall back to type=”text” in older
    browsers, but newer browsers can display a special
    input (keyboard, color chooser, number dial, etc.)
Video - the old way
<object width=”400 height=”300”>

 <param name=”movie” value=”http://www.youtube.com/v/ddO9idmax0o” />
 <param name=”allowFullScreen” value=”true” />
 <param name=”allowscriptaccess” value=”always” />

 <embed src=”http://www.youtube.com/v/ddO9idmax0o” type=”application/x-
  shockwave-flash” allowscriptaccess=”always” allowfullscreen=”true”
  width=”400” height=”300” />




•    Code is complex and confusing

•    Relies on 3rd party plugins for functionality.
Video - the new way


<video src=”movie.mp4”>
Video - the new way
<video controls autoplay>

 <source src=”movie.mp4” type=”video/mp4; codecs=avc1.42E01E,mp4a.40.2”>
 <source src=”movie.ogv” type=”vidio/off; codecs=theora,vorbis”>

 <p>Get the video in <a href=”movie.mp4”>MP4</a> or <a
 href=”movie.ofv”>Ogg Vorbis</a> format.</p>




•    Code is easier to read.

•    Video playback doesn’t require any plugins.

•    Multiple sources depending on browser support.
Audio - Just as easy!

<audio src=”audio.mp3”>
Now it’s time to dig in to
Browser Support
•   Webkit (Safari and Chrome)
•   Firefox 4+
•   Opera
•   IE 9+
•   CSS3 doesn’t deprecate anything from CSS 2.1.


•   Currently uses -moz-, -webkit-, and other browser
    specific prefixes on many modifiers.
CSS3 and Color
•   The old way - background-color: #1a2b3c;

•   RGBa - background-color: rgba(0, 255, 0, 0.7);

•   HSLa - background-color: hsla(0, 100%, 35%, 0.4);




•   “a” stands for “alpha”, or opacity.
Opacity and Gradients
     •    You can also specify the opacity of an object:

    header {
      background-color: #000;
      opacity: 0.7;
    }


     •    or specify a color gradient.
    background-image: -webkit-gradient(

      linear, left 50, right 50,

      color-stop(0.08, rgb(255,255,255)),

      color-stop(0.54, rgb(133,133,133)),

      color-stop(0.77, rgb(0,0,0))
    );
New selectors
•   input[type=”text”] { css rules }
•   li:nth-child(3) { css rules }
•   li:nth-child(3n+3) { css rules }
•   li:nth-child(even) { css rules }
•   li:nth-child(odd) { css rules }
•   li:first-child { css rules }
•   li:last-child { css rules }
Text-shadow and Web fonts
 •     You can apply a drop-shadow:

.quote {

}
  text-shadow: 2px 2px 4px #fff;      Quote Text

 •     or embed a font on the web
@font-face {
  font-family: “BiauKai”;
  src: url(“fonts/BiauKai.ttf”);
}
Web-font resources
•   fontsquirrel.com

•   typekit.com

•   fontdeck.com

•   webfonts.fonts.com

•   google.com/webfonts
Rounded Corners
 •    You can round off the corners of a container:

header {
 -moz-border-radius: 20px;
 -webkit-border-radius: 20px;
 border-radius: 20px;




 •    always specify the non-browser specific modifier
      last, so compliant browsers will use it.
And so much more!
•   Box shadows (like text-shadow, but for block-level)

•   Specify multiple backgrounds.

•   Set transition times on “:hover”ed elements

•   “Transform” objects (rotate, skew, resize)
Implementing CSS3 Today
 •    caniuse.com - compatibility check for HTML5,
      CSS3 and more based on browser.
 •    HTML5 for Internet Explorer 6 to 8
<head<
 <!-- [if lt IE9]>
  <script src=”//html5shiv.googlecode.com/svn/trunk/html5.js”>
 <![endif] -->
</head>

 •    Use a reset.css to start with a clean slate.
 •    Use Progressive Enhancement
Why use HTML5/CSS3?

•   Less reliance on JavaScript.
•   Less reliance on heavy images.
•   Less reliance on 3rd party plugins.
•   Better SEO
•   Better UX for website visitors.
•   They can do some really cool things.
Credits

•   Joe Lewis: http://www.slideshare.net/sanbeiji/
    introduction-to-html5-and-css3-revised
•   Bruce Lawson and Remy Sharp: Introducing
    HTML5 (2nd Edition)
•   w3schools.com/html and w3schools.com/css
•   HTML5doctor.com

Más contenido relacionado

La actualidad más candente

Modular HTML & CSS
Modular HTML & CSSModular HTML & CSS
Modular HTML & CSSShay Howe
 
Grok Drupal (7) Theming (presented at DrupalCon San Francisco)
Grok Drupal (7) Theming (presented at DrupalCon San Francisco)Grok Drupal (7) Theming (presented at DrupalCon San Francisco)
Grok Drupal (7) Theming (presented at DrupalCon San Francisco)Laura Scott
 
Html5 shubelal
Html5 shubelalHtml5 shubelal
Html5 shubelalShub
 
Grok Drupal (7) Theming
Grok Drupal (7) ThemingGrok Drupal (7) Theming
Grok Drupal (7) ThemingPINGV
 
CSS pattern libraries
CSS pattern librariesCSS pattern libraries
CSS pattern librariesRuss Weakley
 
Intro to WordPress theme development
Intro to WordPress theme developmentIntro to WordPress theme development
Intro to WordPress theme developmentThad Allender
 
ePUB 3 and Publishing e-books
ePUB 3 and Publishing e-booksePUB 3 and Publishing e-books
ePUB 3 and Publishing e-booksKerem Karatal
 
Please Don't Touch the Slow Parts V3
Please Don't Touch the Slow Parts V3Please Don't Touch the Slow Parts V3
Please Don't Touch the Slow Parts V3Federico Galassi
 
Introduction to Drupal (7) Theming
Introduction to Drupal (7) ThemingIntroduction to Drupal (7) Theming
Introduction to Drupal (7) ThemingRobert Carr
 
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892Deepak Sharma
 
CSS - OOCSS, SMACSS and more
CSS - OOCSS, SMACSS and moreCSS - OOCSS, SMACSS and more
CSS - OOCSS, SMACSS and moreRuss Weakley
 
Arizona WP - Building a WordPress Theme
Arizona WP - Building a WordPress ThemeArizona WP - Building a WordPress Theme
Arizona WP - Building a WordPress Themecertainstrings
 
Modular HTML & CSS Workshop
Modular HTML & CSS WorkshopModular HTML & CSS Workshop
Modular HTML & CSS WorkshopShay Howe
 

La actualidad más candente (20)

Html intro
Html introHtml intro
Html intro
 
CSS
CSSCSS
CSS
 
Modular HTML & CSS
Modular HTML & CSSModular HTML & CSS
Modular HTML & CSS
 
Grok Drupal (7) Theming (presented at DrupalCon San Francisco)
Grok Drupal (7) Theming (presented at DrupalCon San Francisco)Grok Drupal (7) Theming (presented at DrupalCon San Francisco)
Grok Drupal (7) Theming (presented at DrupalCon San Francisco)
 
Html5 shubelal
Html5 shubelalHtml5 shubelal
Html5 shubelal
 
Grok Drupal (7) Theming
Grok Drupal (7) ThemingGrok Drupal (7) Theming
Grok Drupal (7) Theming
 
CSS pattern libraries
CSS pattern librariesCSS pattern libraries
CSS pattern libraries
 
Please dont touch-3.5
Please dont touch-3.5Please dont touch-3.5
Please dont touch-3.5
 
Intro to WordPress theme development
Intro to WordPress theme developmentIntro to WordPress theme development
Intro to WordPress theme development
 
Unit 3 (it workshop).pptx
Unit 3 (it workshop).pptxUnit 3 (it workshop).pptx
Unit 3 (it workshop).pptx
 
Html5 public
Html5 publicHtml5 public
Html5 public
 
ePUB 3 and Publishing e-books
ePUB 3 and Publishing e-booksePUB 3 and Publishing e-books
ePUB 3 and Publishing e-books
 
Please Don't Touch the Slow Parts V3
Please Don't Touch the Slow Parts V3Please Don't Touch the Slow Parts V3
Please Don't Touch the Slow Parts V3
 
Introduction to Drupal (7) Theming
Introduction to Drupal (7) ThemingIntroduction to Drupal (7) Theming
Introduction to Drupal (7) Theming
 
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
Cssbestpracticesjstyleguidejandtips 150830184202-lva1-app6892
 
CSS - OOCSS, SMACSS and more
CSS - OOCSS, SMACSS and moreCSS - OOCSS, SMACSS and more
CSS - OOCSS, SMACSS and more
 
What is HTML5?
What is HTML5?What is HTML5?
What is HTML5?
 
Arizona WP - Building a WordPress Theme
Arizona WP - Building a WordPress ThemeArizona WP - Building a WordPress Theme
Arizona WP - Building a WordPress Theme
 
Html5
Html5Html5
Html5
 
Modular HTML & CSS Workshop
Modular HTML & CSS WorkshopModular HTML & CSS Workshop
Modular HTML & CSS Workshop
 

Destacado

Mastering CSS3 gradients
Mastering CSS3 gradientsMastering CSS3 gradients
Mastering CSS3 gradientsLea Verou
 
Introduction to Javascript
Introduction to JavascriptIntroduction to Javascript
Introduction to JavascriptAmit Tyagi
 
Css presentation lecture 4
Css presentation lecture 4Css presentation lecture 4
Css presentation lecture 4Mudasir Syed
 
Compass, Sass, and the Enlightened CSS Developer
Compass, Sass, and the Enlightened CSS DeveloperCompass, Sass, and the Enlightened CSS Developer
Compass, Sass, and the Enlightened CSS DeveloperWynn Netherland
 
Incorporating ePortfolios into Advising Practice
Incorporating ePortfolios  into Advising PracticeIncorporating ePortfolios  into Advising Practice
Incorporating ePortfolios into Advising PracticeG. Alex Ambrose
 
Examining the Role of Digital Badges in a University's Massive Open Online Co...
Examining the Role of Digital Badges in a University's Massive Open Online Co...Examining the Role of Digital Badges in a University's Massive Open Online Co...
Examining the Role of Digital Badges in a University's Massive Open Online Co...G. Alex Ambrose
 
Introduction to web development
Introduction to web developmentIntroduction to web development
Introduction to web developmentAlberto Apellidos
 
Colors In CSS3
Colors In CSS3Colors In CSS3
Colors In CSS3Lea Verou
 
Mobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordovaMobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordovaKhirulnizam Abd Rahman
 
Front end development best practices
Front end development best practicesFront end development best practices
Front end development best practicesKarolina Coates
 
Html css java script basics All about you need
Html css java script basics All about you needHtml css java script basics All about you need
Html css java script basics All about you needDipen Parmar
 
Intro to JavaScript
Intro to JavaScriptIntro to JavaScript
Intro to JavaScriptDan Phiffer
 
Frames tables forms
Frames tables formsFrames tables forms
Frames tables formsnobel mujuji
 
Introdution to HTML 5
Introdution to HTML 5Introdution to HTML 5
Introdution to HTML 5onkar_bhosle
 
An Introduction to HTML5
An Introduction to HTML5An Introduction to HTML5
An Introduction to HTML5Steven Chipman
 

Destacado (20)

Mastering CSS3 gradients
Mastering CSS3 gradientsMastering CSS3 gradients
Mastering CSS3 gradients
 
Introduction to Javascript
Introduction to JavascriptIntroduction to Javascript
Introduction to Javascript
 
Css presentation lecture 4
Css presentation lecture 4Css presentation lecture 4
Css presentation lecture 4
 
Compass, Sass, and the Enlightened CSS Developer
Compass, Sass, and the Enlightened CSS DeveloperCompass, Sass, and the Enlightened CSS Developer
Compass, Sass, and the Enlightened CSS Developer
 
Incorporating ePortfolios into Advising Practice
Incorporating ePortfolios  into Advising PracticeIncorporating ePortfolios  into Advising Practice
Incorporating ePortfolios into Advising Practice
 
Examining the Role of Digital Badges in a University's Massive Open Online Co...
Examining the Role of Digital Badges in a University's Massive Open Online Co...Examining the Role of Digital Badges in a University's Massive Open Online Co...
Examining the Role of Digital Badges in a University's Massive Open Online Co...
 
CSS
CSS CSS
CSS
 
Web Design
Web DesignWeb Design
Web Design
 
Introduction to web development
Introduction to web developmentIntroduction to web development
Introduction to web development
 
Colors In CSS3
Colors In CSS3Colors In CSS3
Colors In CSS3
 
Intro to HTML
Intro to HTMLIntro to HTML
Intro to HTML
 
Mobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordovaMobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordova
 
Front end development best practices
Front end development best practicesFront end development best practices
Front end development best practices
 
Html css java script basics All about you need
Html css java script basics All about you needHtml css java script basics All about you need
Html css java script basics All about you need
 
Intro to JavaScript
Intro to JavaScriptIntro to JavaScript
Intro to JavaScript
 
Frames tables forms
Frames tables formsFrames tables forms
Frames tables forms
 
JavaScript Operators
JavaScript OperatorsJavaScript Operators
JavaScript Operators
 
Introdution to HTML 5
Introdution to HTML 5Introdution to HTML 5
Introdution to HTML 5
 
Html 5
Html 5Html 5
Html 5
 
An Introduction to HTML5
An Introduction to HTML5An Introduction to HTML5
An Introduction to HTML5
 

Similar a Intro to HTML 5 / CSS 3

Web Design Bootcamp - Day1
Web Design Bootcamp - Day1Web Design Bootcamp - Day1
Web Design Bootcamp - Day1Aslam Najeebdeen
 
Html5 Brown Bag
Html5 Brown BagHtml5 Brown Bag
Html5 Brown Bagstuplum
 
Castro Chapter 3
Castro Chapter 3Castro Chapter 3
Castro Chapter 3Jeff Byrnes
 
Code & Design your first website 4/18
Code & Design your first website 4/18Code & Design your first website 4/18
Code & Design your first website 4/18TJ Stalcup
 
Code &amp; design your first website (3:16)
Code &amp; design your first website (3:16)Code &amp; design your first website (3:16)
Code &amp; design your first website (3:16)Thinkful
 
HTML 5 Fundamental
HTML 5 FundamentalHTML 5 Fundamental
HTML 5 FundamentalLanh Le
 
Html part 2
Html part 2Html part 2
Html part 2lokenra
 
HTML5 for ASP.NET Developers
HTML5 for ASP.NET DevelopersHTML5 for ASP.NET Developers
HTML5 for ASP.NET DevelopersJustin Lee
 
Frontend for developers
Frontend for developersFrontend for developers
Frontend for developersHernan Mammana
 
Thinkful - Frontend Crash Course - Intro to HTML/CSS
Thinkful - Frontend Crash Course - Intro to HTML/CSSThinkful - Frontend Crash Course - Intro to HTML/CSS
Thinkful - Frontend Crash Course - Intro to HTML/CSSTJ Stalcup
 
[Access U 2010] HTML5 & Accessibility
[Access U 2010] HTML5 & Accessibility[Access U 2010] HTML5 & Accessibility
[Access U 2010] HTML5 & AccessibilityChristopher Schmitt
 

Similar a Intro to HTML 5 / CSS 3 (20)

Web Design Bootcamp - Day1
Web Design Bootcamp - Day1Web Design Bootcamp - Day1
Web Design Bootcamp - Day1
 
The web context
The web contextThe web context
The web context
 
Html5 Brown Bag
Html5 Brown BagHtml5 Brown Bag
Html5 Brown Bag
 
Castro Chapter 3
Castro Chapter 3Castro Chapter 3
Castro Chapter 3
 
Code & Design your first website 4/18
Code & Design your first website 4/18Code & Design your first website 4/18
Code & Design your first website 4/18
 
Html5
Html5Html5
Html5
 
Css
CssCss
Css
 
Code &amp; design your first website (3:16)
Code &amp; design your first website (3:16)Code &amp; design your first website (3:16)
Code &amp; design your first website (3:16)
 
Web development basics
Web development basicsWeb development basics
Web development basics
 
HTML 5 Fundamental
HTML 5 FundamentalHTML 5 Fundamental
HTML 5 Fundamental
 
Html part 2
Html part 2Html part 2
Html part 2
 
HTML5 for ASP.NET Developers
HTML5 for ASP.NET DevelopersHTML5 for ASP.NET Developers
HTML5 for ASP.NET Developers
 
Artdm171 Week4 Tags
Artdm171 Week4 TagsArtdm171 Week4 Tags
Artdm171 Week4 Tags
 
Html,CSS & UI/UX design
Html,CSS & UI/UX designHtml,CSS & UI/UX design
Html,CSS & UI/UX design
 
Frontend for developers
Frontend for developersFrontend for developers
Frontend for developers
 
Thinkful - Frontend Crash Course - Intro to HTML/CSS
Thinkful - Frontend Crash Course - Intro to HTML/CSSThinkful - Frontend Crash Course - Intro to HTML/CSS
Thinkful - Frontend Crash Course - Intro to HTML/CSS
 
[Access U 2010] HTML5 & Accessibility
[Access U 2010] HTML5 & Accessibility[Access U 2010] HTML5 & Accessibility
[Access U 2010] HTML5 & Accessibility
 
HTML & CSS.ppt
HTML & CSS.pptHTML & CSS.ppt
HTML & CSS.ppt
 
Web 101 intro to html
Web 101  intro to htmlWeb 101  intro to html
Web 101 intro to html
 
Lecture 2 - HTML Basics
Lecture 2 - HTML BasicsLecture 2 - HTML Basics
Lecture 2 - HTML Basics
 

Más de Tadpole Collective

Troubleshooting Common WordPress-Problems
Troubleshooting Common WordPress-ProblemsTroubleshooting Common WordPress-Problems
Troubleshooting Common WordPress-ProblemsTadpole Collective
 
An Intro: WordPress with CiviCRM at Civicon 2014
An Intro: WordPress with CiviCRM at Civicon 2014An Intro: WordPress with CiviCRM at Civicon 2014
An Intro: WordPress with CiviCRM at Civicon 2014Tadpole Collective
 
WordPress Workshop with Tadpole, SATW 2013 Conference
WordPress Workshop with Tadpole, SATW 2013 ConferenceWordPress Workshop with Tadpole, SATW 2013 Conference
WordPress Workshop with Tadpole, SATW 2013 ConferenceTadpole Collective
 
Type on the Web (with WordPress)
Type on the Web (with WordPress)Type on the Web (with WordPress)
Type on the Web (with WordPress)Tadpole Collective
 
Getting on the web with WordPress
Getting on the web with WordPressGetting on the web with WordPress
Getting on the web with WordPressTadpole Collective
 
CiviCRM with WordPress: A Dynamic Duo!
CiviCRM with WordPress: A Dynamic Duo!CiviCRM with WordPress: A Dynamic Duo!
CiviCRM with WordPress: A Dynamic Duo!Tadpole Collective
 
WordPress for Nonprofits Using CiviCRM
WordPress for Nonprofits Using CiviCRMWordPress for Nonprofits Using CiviCRM
WordPress for Nonprofits Using CiviCRMTadpole Collective
 

Más de Tadpole Collective (8)

Troubleshooting Common WordPress-Problems
Troubleshooting Common WordPress-ProblemsTroubleshooting Common WordPress-Problems
Troubleshooting Common WordPress-Problems
 
An Intro: WordPress with CiviCRM at Civicon 2014
An Intro: WordPress with CiviCRM at Civicon 2014An Intro: WordPress with CiviCRM at Civicon 2014
An Intro: WordPress with CiviCRM at Civicon 2014
 
WordPress Workshop with Tadpole, SATW 2013 Conference
WordPress Workshop with Tadpole, SATW 2013 ConferenceWordPress Workshop with Tadpole, SATW 2013 Conference
WordPress Workshop with Tadpole, SATW 2013 Conference
 
Type on the Web (with WordPress)
Type on the Web (with WordPress)Type on the Web (with WordPress)
Type on the Web (with WordPress)
 
Getting on the web with WordPress
Getting on the web with WordPressGetting on the web with WordPress
Getting on the web with WordPress
 
CiviCRM with WordPress: A Dynamic Duo!
CiviCRM with WordPress: A Dynamic Duo!CiviCRM with WordPress: A Dynamic Duo!
CiviCRM with WordPress: A Dynamic Duo!
 
Using Web Fonts in WordPress
Using Web Fonts in WordPress Using Web Fonts in WordPress
Using Web Fonts in WordPress
 
WordPress for Nonprofits Using CiviCRM
WordPress for Nonprofits Using CiviCRMWordPress for Nonprofits Using CiviCRM
WordPress for Nonprofits Using CiviCRM
 

Último

Cheap Rate ➥8448380779 ▻Call Girls In Iffco Chowk Gurgaon
Cheap Rate ➥8448380779 ▻Call Girls In Iffco Chowk GurgaonCheap Rate ➥8448380779 ▻Call Girls In Iffco Chowk Gurgaon
Cheap Rate ➥8448380779 ▻Call Girls In Iffco Chowk GurgaonDelhi Call girls
 
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...Call Girls in Nagpur High Profile
 
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceanilsa9823
 
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...Suhani Kapoor
 
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Delhi Call girls
 
VIP Russian Call Girls in Saharanpur Deepika 8250192130 Independent Escort Se...
VIP Russian Call Girls in Saharanpur Deepika 8250192130 Independent Escort Se...VIP Russian Call Girls in Saharanpur Deepika 8250192130 Independent Escort Se...
VIP Russian Call Girls in Saharanpur Deepika 8250192130 Independent Escort Se...Suhani Kapoor
 
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Call Girls in Nagpur High Profile
 
SCRIP Lua HTTP PROGRACMACION PLC WECON CA
SCRIP Lua HTTP PROGRACMACION PLC  WECON CASCRIP Lua HTTP PROGRACMACION PLC  WECON CA
SCRIP Lua HTTP PROGRACMACION PLC WECON CANestorGamez6
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxjanettecruzeiro1
 
Kindergarten Assessment Questions Via LessonUp
Kindergarten Assessment Questions Via LessonUpKindergarten Assessment Questions Via LessonUp
Kindergarten Assessment Questions Via LessonUpmainac1
 
WAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsWAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsCharles Obaleagbon
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...kumaririma588
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation decktbatkhuu1
 
DragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptxDragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptxmirandajeremy200221
 
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdf
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdfThe_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdf
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdfAmirYakdi
 
The history of music videos a level presentation
The history of music videos a level presentationThe history of music videos a level presentation
The history of music videos a level presentationamedia6
 
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call GirlsCBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girlsmodelanjalisharma4
 

Último (20)

Cheap Rate ➥8448380779 ▻Call Girls In Iffco Chowk Gurgaon
Cheap Rate ➥8448380779 ▻Call Girls In Iffco Chowk GurgaonCheap Rate ➥8448380779 ▻Call Girls In Iffco Chowk Gurgaon
Cheap Rate ➥8448380779 ▻Call Girls In Iffco Chowk Gurgaon
 
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
VVIP Pune Call Girls Hadapsar (7001035870) Pune Escorts Nearby with Complete ...
 
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun serviceCALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
CALL ON ➥8923113531 🔝Call Girls Aminabad Lucknow best Night Fun service
 
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
 
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
 
B. Smith. (Architectural Portfolio.).pdf
B. Smith. (Architectural Portfolio.).pdfB. Smith. (Architectural Portfolio.).pdf
B. Smith. (Architectural Portfolio.).pdf
 
VIP Russian Call Girls in Saharanpur Deepika 8250192130 Independent Escort Se...
VIP Russian Call Girls in Saharanpur Deepika 8250192130 Independent Escort Se...VIP Russian Call Girls in Saharanpur Deepika 8250192130 Independent Escort Se...
VIP Russian Call Girls in Saharanpur Deepika 8250192130 Independent Escort Se...
 
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
 
SCRIP Lua HTTP PROGRACMACION PLC WECON CA
SCRIP Lua HTTP PROGRACMACION PLC  WECON CASCRIP Lua HTTP PROGRACMACION PLC  WECON CA
SCRIP Lua HTTP PROGRACMACION PLC WECON CA
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptx
 
Kindergarten Assessment Questions Via LessonUp
Kindergarten Assessment Questions Via LessonUpKindergarten Assessment Questions Via LessonUp
Kindergarten Assessment Questions Via LessonUp
 
WAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsWAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past Questions
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
 
young call girls in Pandav nagar 🔝 9953056974 🔝 Delhi escort Service
young call girls in Pandav nagar 🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Pandav nagar 🔝 9953056974 🔝 Delhi escort Service
young call girls in Pandav nagar 🔝 9953056974 🔝 Delhi escort Service
 
DragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptxDragonBall PowerPoint Template for demo.pptx
DragonBall PowerPoint Template for demo.pptx
 
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdf
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdfThe_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdf
The_Canvas_of_Creative_Mastery_Newsletter_April_2024_Version.pdf
 
The history of music videos a level presentation
The history of music videos a level presentationThe history of music videos a level presentation
The history of music videos a level presentation
 
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call GirlsCBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
 
Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance VVIP 🍎 SER...
Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance  VVIP 🍎 SER...Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance  VVIP 🍎 SER...
Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance VVIP 🍎 SER...
 

Intro to HTML 5 / CSS 3

  • 1. Introduction to & Andrew Christian
  • 2. Obligatory Intro So, who is this guy? • Coding HTML since 1996 • WordPress since 2004 (v1.0.2 Art Blakely) • New York WP Community since WordCamp NYC 2009. • Tadpole.cc - WordPress Hosting, Support, Training and Consulting
  • 3. I’m assuming... • You are somewhat familiar with previous versions of HTML and CSS . • You know your way around a WordPress theme, but not necessarily hard-core dev.
  • 4. A Little History • HTML was created to link documents via HyperText (the “HT” in HTML) • Quickly grew into a more rich markup language (the “ML”) • Browser Wars: Microsoft vs. Netscape.
  • 5. A Little History • XHTML created in order to transition from HTML to XML • XHTML required stricter coding standards. • If not coded properly, it would break... Horribly.
  • 6. A Little History • 2002: W3C created XHTML 2.0 • 2004: Apple, Mozilla, and Opera created the WHATWG, when W3C shot down HTML5. • 2007: W3C created HTML 5 working group. • 2009: W3C abandons XHTML 2.0 in favor of HTML5.
  • 7. HTML5 Philosophy • Must be backwards compatible with older versions of HTML. • Everything added or removed must be done so for a practical purpose. • The process of deciding what goes in is an open process, involving blogs, twitter, etc.
  • 8. Can we use it now? • The spec is not 100% finalized, but is broken into “modules,” many of which are finalized. • Most features are supported by all major browsers (Chrome, Firefox 4+, Safari, IE9+) • Most features degrade gracefully in older browsers.
  • 9. Document Heading <!DOCTYPE html PUBLIC “=//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml-1-transitional.dtd”> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Page Title goes hear</title> <meta http-equiv=”Content- Type” content=”text/html; charset=iso-8859-1” /> <link rel=”stylesheet” href=”style.css” type=”text/css” /> <script src=”javascript.css” type=”text/javascript” /> </ head>
  • 10. Document Heading <!DOCTYPE html> <html lang="en-us"> <head> <title>Page Title goes hear</title> <meta charset=”utf-8”> <link rel=”stylesheet” href=”style.css”>
  • 11. HTML Code Syntax <IMG SRC=”image.png” ALT=”This is an image, Duh!” /> is the same as <Img sRc=image.png ALt=’This is an image, Duh!’>
  • 12. New HTML Elements • article • footer < > • aside • header • bdi • hgroup • command • mark • details • nav • summary • ruby, rt, and rp • figure • section • figcaption • time
  • 13. Changed Elements • <a> can now wrap around block elements. • <b> and <i> are back (but not presentational). • <cite> defined to be the title of a work. • <hr> is now a “paragraph-level thematic break.” • <small> is now for small-print, i.e., legal boilerplate.
  • 14. Removed Elements • <big> • <center> and <font> • <strike> and <u> • <frame>, <frameset>, and <noframes> • <acronym> is now <abbr> • <applet> is now <object>
  • 15. Blog Page Structure <div id=”header”> <h1>Page Title</h1> <p>Tag Line text...</p> </div> <div id=”nav”> <ul>...list of nav links...</ul> </div> <div id=”sidebar”>...sidebar links...</div> <div id=”content”> <div class=”article”> <h2>Article Title</h2> <p>Published on June 9, 2012.</p> <p>Article Content</p> <div class=”entry-meta”>...comments, permalink, etc...</div> </div> </div> <div id=”footer”>
  • 16. Blog Page Structure <header> <hgroup> <h1>Page Title</h1> <h2>Tag Line text...</h2> </hgroup> </header> <nav><ul>...list of nav links...</ul></nav> <aside>...sidebar links...</aside> <article> <header> <h1>Article Title</h1> <time datetime=”2012-06-09” pubdate”>Published on June 9, 2012.</time> </header> <p>Article Content</p> <footer>...comments, permalink, etc...</footer>
  • 17. <header> & <hgroup> • When <header> is used outside of other elements, it’s assumed to be the page header. • When <header> is used inside of elements like <aside> and <article> • <header> isn’t necessary when an <h1> is the only element of the header. • Cannot be placed inside a <footer>, <address> or another <header> element.
  • 18. <header> & <hgroup> • <header> allows you to group other content in with the heading, such as publication date, etc. • <hgroup> links together multiple headings into one header. • Great for headers that have multiple lines, or the Page Title with a Site Description.
  • 19. <footer> • Just like <header>, you can use more than one <footer> on a page. • A footer typically, but not always, goes at the bottom of content. • For example, if you use a <footer> for next/ previous blog post links, you can use <article> <header>...</header> <footer>...Next/Previous nav links</footer> <p>...Content</p> <footer>...Next/Previous nav links</footer>
  • 20. <nav> • Usually contains a <ul> list of links. • You can have more than one <nav> list on a page. • Placing the <nav> outside of other elements means it’s navigation across your site. • Placing <nav> inside an <article> means it’s navigation for that article only (useful on single post pages for Next/Previous links).
  • 21. <article> and <section> • <article> should be a complete block of content that is wholly separate from other content. • <section> divides content into, yes, sections. A section does not stand on its own. • Think of <article> as something you might see in an RSS feed. • However, you can use <article> within another <article> tag. For example, comments could be in separate <article> tags inside of a blog post.
  • 22. <aside> • Used for “Secondary Content” • Meant for content that is related to, but not necessarily important for understanding, content. • Can be used as a sidebar for a page. • Can also be used inside <article>, etc., for information related to the article.
  • 23. <aside> • Used for “Secondary Content” • Meant for content that is related to, but not necessarily important for understanding, content. • Can be used as a sidebar for a page. • Can also be used inside <article>, etc., for information related to the article.
  • 24. Forms - New Attributes • required • autofocus • placeholder • form • autocomplete • pattern
  • 25. Forms - New Input Types • email • tel (telephone) • date • color • search • number • New input types fall back to type=”text” in older browsers, but newer browsers can display a special input (keyboard, color chooser, number dial, etc.)
  • 26. Video - the old way <object width=”400 height=”300”> <param name=”movie” value=”http://www.youtube.com/v/ddO9idmax0o” /> <param name=”allowFullScreen” value=”true” /> <param name=”allowscriptaccess” value=”always” /> <embed src=”http://www.youtube.com/v/ddO9idmax0o” type=”application/x- shockwave-flash” allowscriptaccess=”always” allowfullscreen=”true” width=”400” height=”300” /> • Code is complex and confusing • Relies on 3rd party plugins for functionality.
  • 27. Video - the new way <video src=”movie.mp4”>
  • 28. Video - the new way <video controls autoplay> <source src=”movie.mp4” type=”video/mp4; codecs=avc1.42E01E,mp4a.40.2”> <source src=”movie.ogv” type=”vidio/off; codecs=theora,vorbis”> <p>Get the video in <a href=”movie.mp4”>MP4</a> or <a href=”movie.ofv”>Ogg Vorbis</a> format.</p> • Code is easier to read. • Video playback doesn’t require any plugins. • Multiple sources depending on browser support.
  • 29. Audio - Just as easy! <audio src=”audio.mp3”>
  • 30. Now it’s time to dig in to
  • 31. Browser Support • Webkit (Safari and Chrome) • Firefox 4+ • Opera • IE 9+ • CSS3 doesn’t deprecate anything from CSS 2.1. • Currently uses -moz-, -webkit-, and other browser specific prefixes on many modifiers.
  • 32. CSS3 and Color • The old way - background-color: #1a2b3c; • RGBa - background-color: rgba(0, 255, 0, 0.7); • HSLa - background-color: hsla(0, 100%, 35%, 0.4); • “a” stands for “alpha”, or opacity.
  • 33. Opacity and Gradients • You can also specify the opacity of an object: header { background-color: #000; opacity: 0.7; } • or specify a color gradient. background-image: -webkit-gradient( linear, left 50, right 50, color-stop(0.08, rgb(255,255,255)), color-stop(0.54, rgb(133,133,133)), color-stop(0.77, rgb(0,0,0)) );
  • 34. New selectors • input[type=”text”] { css rules } • li:nth-child(3) { css rules } • li:nth-child(3n+3) { css rules } • li:nth-child(even) { css rules } • li:nth-child(odd) { css rules } • li:first-child { css rules } • li:last-child { css rules }
  • 35. Text-shadow and Web fonts • You can apply a drop-shadow: .quote { } text-shadow: 2px 2px 4px #fff; Quote Text • or embed a font on the web @font-face { font-family: “BiauKai”; src: url(“fonts/BiauKai.ttf”); }
  • 36. Web-font resources • fontsquirrel.com • typekit.com • fontdeck.com • webfonts.fonts.com • google.com/webfonts
  • 37. Rounded Corners • You can round off the corners of a container: header { -moz-border-radius: 20px; -webkit-border-radius: 20px; border-radius: 20px; • always specify the non-browser specific modifier last, so compliant browsers will use it.
  • 38. And so much more! • Box shadows (like text-shadow, but for block-level) • Specify multiple backgrounds. • Set transition times on “:hover”ed elements • “Transform” objects (rotate, skew, resize)
  • 39. Implementing CSS3 Today • caniuse.com - compatibility check for HTML5, CSS3 and more based on browser. • HTML5 for Internet Explorer 6 to 8 <head< <!-- [if lt IE9]> <script src=”//html5shiv.googlecode.com/svn/trunk/html5.js”> <![endif] --> </head> • Use a reset.css to start with a clean slate. • Use Progressive Enhancement
  • 40. Why use HTML5/CSS3? • Less reliance on JavaScript. • Less reliance on heavy images. • Less reliance on 3rd party plugins. • Better SEO • Better UX for website visitors. • They can do some really cool things.
  • 41. Credits • Joe Lewis: http://www.slideshare.net/sanbeiji/ introduction-to-html5-and-css3-revised • Bruce Lawson and Remy Sharp: Introducing HTML5 (2nd Edition) • w3schools.com/html and w3schools.com/css • HTML5doctor.com