SlideShare a Scribd company logo
1 of 43
Download to read offline
INTERMEDIATE HTML AND CSS
CLASS 3Intermediate HTML/CSS ~ Girl Develop It ~
WELCOME!
Girl Develop It is here to provide affordable and
accessible programs to learn software through
mentorship and hands-on instruction.
Some "rules"
We are here for you!
Every question is important
Help each other
Have fun
MICRODATA
MICRODATA
Micro-what?
From the W3C spec:
“Sometimes, it is desirable to annotate
content with specific machine-readable
labels...”
“Microdata allows nested groups of
namevalue pairs to be added to
documents, in parallel with the existing
content.”
Microdata Overview
MICRODATA
Sounds BORING
Why should I care?
MICRODATA
Wouldn't it be great if the search results for your
restaurant looked like this?
MICRODATA
Or if search results for your book looked like this?
MICRODATA
Or if search results for your recipe looked like this?
RICH SNIPPETS
“The more information a search result
snippet can provide, the easier it is for
users to decide whether that page is
relevant to their search.”
Rich snippets
RICH SNIPPETS
“With rich snippets, webmasters with
sites containing structured
content...can label their content to
make it clear that each labeled piece of
text represents a certain type of data:
for example, a restaurant name, an
address, or a rating.”
Rich snippets
MICRODATA STRUCTURE
We will add microdata to our favorite pizza restaurant
<div>
L'Amourita Pizza
Located at 123 Main St, Albuquerque, NM.
Phone: 206-555-1234
<a href="http://pizza.com">http://pizza.com</a>
</div>
MICRODATA STRUCTURE
We need to define three things to add microdata to our
sites:
Itemscope attribute
Itemtype attribute
Itemprop attribute
MICRODATA STRUCTURE
Itemscope
<div itemscope>
L'Amourita Pizza
Located at 123 Main St, Albuquerque, NM.
Phone: 206-555-1234
<a href="http://pizza.com">http://pizza.com</a>
</div>
MICRODATA STRUCTURE
Item scope
Sets the "scope" of what we are describing with the
microdata.
All elements nested inside the div with "itemscope" will
adhere to the vocabulary we specify with "itemtype". (i.e.
person, place, recipe)
MICRODATA STRUCTURE
Itemtype
<div itemscope itemtype="http://schema.org/Organization">
L'Amourita Pizza
Located at 123 Main St, Albuquerque, NM.
Phone: 206-555-1234
<a href="http://pizza.com">http://pizza.com</a>
</div>
MICRODATA STRUCTURE
Itemtype
Points you to the place where a microdata type is
defined
Since we're defining a business, we want to point to the
definition of an Organization
defines several type includinghttp://schema.org
Organization
MICRODATA STRUCTURE
Itemprop
<div itemscope itemtype ="http://schema.org/Organization">
<span itemprop ="name">L'Amourita Pizza</span>
Located at 123 Main St, Albuquerque, NM.
Phone: <span itemprop ="tel">206-555-1234</span>
<a href="http://pizza.com" itemprop ="url">http://pizza.com</a>
</div>
MICRODATA STRUCTURE
Itemprop
Itemprop is a property of your Item's type. The available
properties are listed on the relevant page at
For our Organization example, the available include
are: name, url, address, telephone, and location. For the
full list:
http://schema.org/docs/schemas
http://schema.org/Organization
MICRODATA STRUCTURE
Itemprop
Itemprop is a property of your Item's type. The available
properties are listed on the relevant page at
Here are properties of a
http://schema.org/docs/schemas
Recipe
NESTED MICRODATA
We have specified ALMOST everything for our
Organization, but we still don't have entries for the
address
Addresses are their own unique itemtype. So we need
to nest the address information inside a new element
with the itemtype set to Address
<div itemscope itemtype ="http://schema.org/Organization">
<span itemprop ="name">L'Amourita Pizza</span>
Located at 123 Main St, Albuquerque, NM.
Phone: <span itemprop ="tel">206-555-1234</span>
<a href="http://pizza.com" itemprop ="url">http://pizza.com</a>
</div>
NESTED MICRODATA
<div itemscope itemtype ="http://schema.org/Organization">
<span itemprop ="name">L'Amourita Pizza</span>
Located at
<span itemprop ="address" itemscope itemtype ="http://schema.org/PostalAddress">
<span itemprop ="streetAddress">123 Main St</span>,
<span itemprop ="addressLocality">Albuquerque</span>,
<span itemprop ="addressRegion">NM</span>.
</span>
Phone: <span itemprop ="tel">206-555-1234</span>
<a href="http://pizza.com" itemprop ="url">http://pizza.com</a>
</div>
MICRODATA RESOURCES
To make sure google sees your page the way you expect
terms of the microdata), use this tool:
Getting started guide:
Tutorial on microdata from Mark Pilgrim:
Google overview of using Microdata for an Organization:
http://www.google.com/webmasters/tools/richsnippets
http://schema.org/docs/gs.html>
http://diveintohtml5.info/extensibility.html
http://www.google.com/support/webmasters/bin/answ
answer=146861
LET'S DEVELOP IT
Enhance our Women in Computing web site to use
HTML5 & CSS3
Use the schema to describe the women in tech.
Feel free to add more info than we have to use more
itemprops!
Person
MULTIMEDIA
Audio and video are first class citizens in HTML5
MULTIMEDIA
Useful as a replacement for flash on mobile devices
Flash makes mobile devices sad :(
VIDEO
The Dream
The video element was created to make it unnecessary
to use plugins to display video content on your pages.
The idea is to simplify and streamline video content
delivery.
<video src="demo.mp4" type="video/mp4">
Your browser does not support the video element.
</video>
VIDEO
The Reality
If you want to support ALL browsers and ALL video
encodings, you will still need a plugin as a last-resort fall
back plan.
This is because not all browsers read video the same
way, and older browsers (like IE<9) don't support the
video element at all.
VIDEO
The Reality
<video id="movie" width="320" height="240" preload controls>
<source src="pr6.webm" type='video/webm; codecs="vp8, vorbis"' />
<source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"' />
<source src="pr6.mp4" />
<object width="320" height="240" type="application/x-shockwave-flash" data="flowplayer-3.2.1.swf">
<param name="movie" value="flowplayer-3.2.1.swf" />
<param name="allowfullscreen" value="true" />
<param name="flashvars" value='config={"clip": {"url": "http://wearehugh.com/dih5/pr6.mp4", "autoPlay":false, "autoBuffering
":true}}' />
<p>Download video as <a href="pr6.mp4">MP4</a>, <a href="pr6.webm">WebM</a>, or <a href="pr6.ogv">Ogg</a>.</p>
</object>
</video>
<script>
</script>
var v = document.getElementById("movie");
v.onclick = function() {
if (v.paused) {
v.play();
} else {
v.pause();
}
});
AUDIO
<audio controls>
<source src="music.mp3" type="audio/mpeg"/>
<source src="music.aac" type="audio/mp4" />
<source src="music.ogg" type="audio/ogg"/>
<!-- now include flash fall back -->
</audio>
MULTIMEDIA
If the dream is still far from reality, what's a dev to do?
The good news is, devs are working on it all the time
Video on the Web
Miro Video Converter
Native Audio in the Browser
CANVAS
Environment for creating dynamic images
Canvas element + javascript = dynamic content!
CANVAS
Animated Factorization
http://bomomo.com/
http://canvasrider.com/
http://lights.elliegoulding.com/
Codepen.io
CANVAS
The first step is to add a canvas element to your HTML.
Make sure you give it an id:
Unfortunately, everything else (all the cool stuff) is
actually in JavaScript and outside the scope of this class
<canvas id="myCanvas" width="400" height="400">
Your browser doesn’t support Canvas.
</canvas>
DEVICE ACCESS
Rich, device-aware features and experiences
GEOLOCATION
Browsers using HTML5 can locate you through IP
addresses, WiFi connections, and GPS towers (for
mobile phones and tablets)
But all the cool interactive stuff is, once again, done in
JavaScript
You didn't expect HTML and CSS to do EVERYTHING,
did you?
Google Map
STORAGE
storage
storage-events
STORAGE
You can use HTML5 Web Storage to persist simple
data.
Two kinds of HTML5 Web Storage:
SessionStorage for per-window data
LocalStorage for global, persistent data (stored to
hard drive through the browser)
SESSIONSTORAGE
Ever accidentally bought two of the same kind of
ticket, because you were shopping the same site in
multiple windows/tabs?
Session Storage provides a good way to prevent this.
Session Storage is not saved to the user’s hard drive
It only lasts for the time that a browser window or tab
is open and viewing a specific site.
LOCALSTORAGE
With Local Storage, we can save data to the user’s
computer, via the browser.
When a user revisits a site in the same browser they
first visited in, any data saved to Local Storage can be
retrieved.
Local Storage is browser-specific: Information you
save while browsing with Firefox will NOT be available
to Safari.
QUESTIONS?
?
GDI Seattle - Intermediate HTML and CSS Class 3 Slides

More Related Content

What's hot

TDC2013: Arquitetura de apps com Sencha Touch 2
TDC2013: Arquitetura de apps com Sencha Touch 2TDC2013: Arquitetura de apps com Sencha Touch 2
TDC2013: Arquitetura de apps com Sencha Touch 2Loiane Groner
 
Keyboard and Interaction Accessibility Techniques
Keyboard and Interaction Accessibility TechniquesKeyboard and Interaction Accessibility Techniques
Keyboard and Interaction Accessibility TechniquesJared Smith
 
10 Simple Rules for Making My Site Accessible
10 Simple Rules for Making My Site Accessible10 Simple Rules for Making My Site Accessible
10 Simple Rules for Making My Site AccessibleHelena Zubkow
 
Progressive Web Apps keynote, Google Developer Summit, Tokyo, Japan
Progressive Web Apps keynote, Google Developer Summit, Tokyo, JapanProgressive Web Apps keynote, Google Developer Summit, Tokyo, Japan
Progressive Web Apps keynote, Google Developer Summit, Tokyo, JapanRobert Nyman
 
The Future of the Web - Cold Front conference 2016
The Future of the Web - Cold Front conference 2016The Future of the Web - Cold Front conference 2016
The Future of the Web - Cold Front conference 2016Robert Nyman
 
The Future of Progressive Web Apps - Google for Indonesia
The Future of Progressive Web Apps - Google for IndonesiaThe Future of Progressive Web Apps - Google for Indonesia
The Future of Progressive Web Apps - Google for IndonesiaRobert Nyman
 
All you need to know about JavaScript loading and execution in the browser - ...
All you need to know about JavaScript loading and execution in the browser - ...All you need to know about JavaScript loading and execution in the browser - ...
All you need to know about JavaScript loading and execution in the browser - ...Caelum
 
The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016Robert Nyman
 
Extending & Scaling | Dallas PHP
Extending & Scaling | Dallas PHPExtending & Scaling | Dallas PHP
Extending & Scaling | Dallas PHPrandyhoyt
 
Mobile web development techniques (and Opera's developer tools)
Mobile web development techniques (and Opera's developer tools)Mobile web development techniques (and Opera's developer tools)
Mobile web development techniques (and Opera's developer tools)Andreas Bovens
 
That's crazy! how to build single page web apps
That's crazy! how to build single page web appsThat's crazy! how to build single page web apps
That's crazy! how to build single page web appsChris Love
 
How to build a website... the accessible way
How to build a website... the accessible wayHow to build a website... the accessible way
How to build a website... the accessible wayIsabel Brison
 
Now you see me... Adaptive Web Design and Development
Now you see me... Adaptive Web Design and DevelopmentNow you see me... Adaptive Web Design and Development
Now you see me... Adaptive Web Design and DevelopmentJonas Päckos
 
Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Christian Heindel
 
Building WebApp with HTML5
Building WebApp with HTML5Building WebApp with HTML5
Building WebApp with HTML5Tien Tran Le Duy
 
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...“Good design is obvious. Great design is transparent.” — How we use Bootstrap...
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...Roni Banerjee
 

What's hot (20)

TDC2013: Arquitetura de apps com Sencha Touch 2
TDC2013: Arquitetura de apps com Sencha Touch 2TDC2013: Arquitetura de apps com Sencha Touch 2
TDC2013: Arquitetura de apps com Sencha Touch 2
 
Keyboard and Interaction Accessibility Techniques
Keyboard and Interaction Accessibility TechniquesKeyboard and Interaction Accessibility Techniques
Keyboard and Interaction Accessibility Techniques
 
10 Simple Rules for Making My Site Accessible
10 Simple Rules for Making My Site Accessible10 Simple Rules for Making My Site Accessible
10 Simple Rules for Making My Site Accessible
 
Progressive Web Apps keynote, Google Developer Summit, Tokyo, Japan
Progressive Web Apps keynote, Google Developer Summit, Tokyo, JapanProgressive Web Apps keynote, Google Developer Summit, Tokyo, Japan
Progressive Web Apps keynote, Google Developer Summit, Tokyo, Japan
 
The Future of the Web - Cold Front conference 2016
The Future of the Web - Cold Front conference 2016The Future of the Web - Cold Front conference 2016
The Future of the Web - Cold Front conference 2016
 
Upload[1]
Upload[1]Upload[1]
Upload[1]
 
The Future of Progressive Web Apps - Google for Indonesia
The Future of Progressive Web Apps - Google for IndonesiaThe Future of Progressive Web Apps - Google for Indonesia
The Future of Progressive Web Apps - Google for Indonesia
 
Smart Design
Smart Design Smart Design
Smart Design
 
All you need to know about JavaScript loading and execution in the browser - ...
All you need to know about JavaScript loading and execution in the browser - ...All you need to know about JavaScript loading and execution in the browser - ...
All you need to know about JavaScript loading and execution in the browser - ...
 
IconFonts
IconFontsIconFonts
IconFonts
 
The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016The Future of Progressive Web Apps - View Source conference, Berlin 2016
The Future of Progressive Web Apps - View Source conference, Berlin 2016
 
Extending & Scaling | Dallas PHP
Extending & Scaling | Dallas PHPExtending & Scaling | Dallas PHP
Extending & Scaling | Dallas PHP
 
Duct Tape PR - CIPR Scotland Social in the City Talk
Duct Tape PR - CIPR Scotland Social in the City TalkDuct Tape PR - CIPR Scotland Social in the City Talk
Duct Tape PR - CIPR Scotland Social in the City Talk
 
Mobile web development techniques (and Opera's developer tools)
Mobile web development techniques (and Opera's developer tools)Mobile web development techniques (and Opera's developer tools)
Mobile web development techniques (and Opera's developer tools)
 
That's crazy! how to build single page web apps
That's crazy! how to build single page web appsThat's crazy! how to build single page web apps
That's crazy! how to build single page web apps
 
How to build a website... the accessible way
How to build a website... the accessible wayHow to build a website... the accessible way
How to build a website... the accessible way
 
Now you see me... Adaptive Web Design and Development
Now you see me... Adaptive Web Design and DevelopmentNow you see me... Adaptive Web Design and Development
Now you see me... Adaptive Web Design and Development
 
Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5Mobile applications for SharePoint using HTML5
Mobile applications for SharePoint using HTML5
 
Building WebApp with HTML5
Building WebApp with HTML5Building WebApp with HTML5
Building WebApp with HTML5
 
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...“Good design is obvious. Great design is transparent.” — How we use Bootstrap...
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...
 

Viewers also liked

GDI Seattle - Intro to JavaScript Class 2
GDI Seattle - Intro to JavaScript Class 2GDI Seattle - Intro to JavaScript Class 2
GDI Seattle - Intro to JavaScript Class 2Heather Rock
 
Kuala Lumpur Hotels
Kuala Lumpur HotelsKuala Lumpur Hotels
Kuala Lumpur Hotelsquicksweet
 
GDI Seattle - Intro to JavaScript Class 1
GDI Seattle - Intro to JavaScript Class 1GDI Seattle - Intro to JavaScript Class 1
GDI Seattle - Intro to JavaScript Class 1Heather Rock
 
New cervical screening guidelines. 1
New cervical screening guidelines. 1New cervical screening guidelines. 1
New cervical screening guidelines. 1CSPWQ
 
GDI Seattle - Web Accessibility Class 1
GDI Seattle - Web Accessibility Class 1GDI Seattle - Web Accessibility Class 1
GDI Seattle - Web Accessibility Class 1Heather Rock
 
Prova origami
Prova origamiProva origami
Prova origamipiranzor
 

Viewers also liked (8)

Pic pas demo
Pic pas demoPic pas demo
Pic pas demo
 
GDI Seattle - Intro to JavaScript Class 2
GDI Seattle - Intro to JavaScript Class 2GDI Seattle - Intro to JavaScript Class 2
GDI Seattle - Intro to JavaScript Class 2
 
Kuala Lumpur Hotels
Kuala Lumpur HotelsKuala Lumpur Hotels
Kuala Lumpur Hotels
 
GDI Seattle - Intro to JavaScript Class 1
GDI Seattle - Intro to JavaScript Class 1GDI Seattle - Intro to JavaScript Class 1
GDI Seattle - Intro to JavaScript Class 1
 
New cervical screening guidelines. 1
New cervical screening guidelines. 1New cervical screening guidelines. 1
New cervical screening guidelines. 1
 
Nelson mandela
Nelson mandelaNelson mandela
Nelson mandela
 
GDI Seattle - Web Accessibility Class 1
GDI Seattle - Web Accessibility Class 1GDI Seattle - Web Accessibility Class 1
GDI Seattle - Web Accessibility Class 1
 
Prova origami
Prova origamiProva origami
Prova origami
 

Similar to GDI Seattle - Intermediate HTML and CSS Class 3 Slides

Progressive Web App Challenges
Progressive Web App ChallengesProgressive Web App Challenges
Progressive Web App ChallengesJason Grigsby
 
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issuesMaximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issuesPlatypus
 
Bringing JAMStack to the Enterprise
Bringing JAMStack to the EnterpriseBringing JAMStack to the Enterprise
Bringing JAMStack to the EnterpriseC4Media
 
Introduction to Progressive Web Applications
Introduction to Progressive Web ApplicationsIntroduction to Progressive Web Applications
Introduction to Progressive Web ApplicationsChris Love
 
Final gatsby + wagtail - Inclusive product week
Final gatsby + wagtail - Inclusive product weekFinal gatsby + wagtail - Inclusive product week
Final gatsby + wagtail - Inclusive product weekDawn Wages
 
Angular js mobile jsday 2014 - Verona 14 may
Angular js mobile   jsday 2014 - Verona 14 mayAngular js mobile   jsday 2014 - Verona 14 may
Angular js mobile jsday 2014 - Verona 14 mayLuciano Amodio
 
Open Data, Visualization & Usability for Online News Delivery
Open Data,  Visualization &  Usability for  Online News DeliveryOpen Data,  Visualization &  Usability for  Online News Delivery
Open Data, Visualization & Usability for Online News DeliveryMohan Krishnan
 
Baobab WebSuite overview - Publisher's Toolbox
Baobab WebSuite overview - Publisher's ToolboxBaobab WebSuite overview - Publisher's Toolbox
Baobab WebSuite overview - Publisher's ToolboxPublisher's Toolbox
 
Programming for Non-programmers PFNP @ Razorfish
Programming for Non-programmers PFNP @ Razorfish Programming for Non-programmers PFNP @ Razorfish
Programming for Non-programmers PFNP @ Razorfish Chris Castiglione
 
Fake it 'til you make it
Fake it 'til you make itFake it 'til you make it
Fake it 'til you make itJonathan Snook
 
Bruce Lawson Opera Indonesia
Bruce Lawson Opera IndonesiaBruce Lawson Opera Indonesia
Bruce Lawson Opera Indonesiabrucelawson
 
Performance and User Experience for the Web of Tomorrow
Performance and User Experience for the Web of TomorrowPerformance and User Experience for the Web of Tomorrow
Performance and User Experience for the Web of TomorrowWP Engine
 
Programming for Non-Programmers - SXSW Vegas 2014
Programming for Non-Programmers - SXSW Vegas 2014Programming for Non-Programmers - SXSW Vegas 2014
Programming for Non-Programmers - SXSW Vegas 2014Chris Castiglione
 
Creating Rajanikant Powered Site
Creating Rajanikant Powered SiteCreating Rajanikant Powered Site
Creating Rajanikant Powered Sitemarkandey
 
Responsive design: techniques and tricks to prepare your websites for the mul...
Responsive design: techniques and tricks to prepare your websites for the mul...Responsive design: techniques and tricks to prepare your websites for the mul...
Responsive design: techniques and tricks to prepare your websites for the mul...Andreas Bovens
 
Rubbing the Sankara Stones the wrong way - From the Front 2014
Rubbing the Sankara Stones the wrong way - From the Front 2014Rubbing the Sankara Stones the wrong way - From the Front 2014
Rubbing the Sankara Stones the wrong way - From the Front 2014Christian Heilmann
 
CSS3 Media Queries: Mobile Elixir or CSS Snake Oil
CSS3 Media Queries: Mobile Elixir or CSS Snake OilCSS3 Media Queries: Mobile Elixir or CSS Snake Oil
CSS3 Media Queries: Mobile Elixir or CSS Snake Oiljameswillweb
 

Similar to GDI Seattle - Intermediate HTML and CSS Class 3 Slides (20)

Progressive Web App Challenges
Progressive Web App ChallengesProgressive Web App Challenges
Progressive Web App Challenges
 
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issuesMaximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
 
Building Web Hack Interfaces
Building Web Hack InterfacesBuilding Web Hack Interfaces
Building Web Hack Interfaces
 
Bringing JAMStack to the Enterprise
Bringing JAMStack to the EnterpriseBringing JAMStack to the Enterprise
Bringing JAMStack to the Enterprise
 
Introduction to Progressive Web Applications
Introduction to Progressive Web ApplicationsIntroduction to Progressive Web Applications
Introduction to Progressive Web Applications
 
Adobe & HTML5
Adobe & HTML5Adobe & HTML5
Adobe & HTML5
 
Final gatsby + wagtail - Inclusive product week
Final gatsby + wagtail - Inclusive product weekFinal gatsby + wagtail - Inclusive product week
Final gatsby + wagtail - Inclusive product week
 
Angular js mobile jsday 2014 - Verona 14 may
Angular js mobile   jsday 2014 - Verona 14 mayAngular js mobile   jsday 2014 - Verona 14 may
Angular js mobile jsday 2014 - Verona 14 may
 
Open Data, Visualization & Usability for Online News Delivery
Open Data,  Visualization &  Usability for  Online News DeliveryOpen Data,  Visualization &  Usability for  Online News Delivery
Open Data, Visualization & Usability for Online News Delivery
 
Baobab WebSuite overview - Publisher's Toolbox
Baobab WebSuite overview - Publisher's ToolboxBaobab WebSuite overview - Publisher's Toolbox
Baobab WebSuite overview - Publisher's Toolbox
 
Why Startups Are Still On AWS
Why Startups Are Still On AWSWhy Startups Are Still On AWS
Why Startups Are Still On AWS
 
Programming for Non-programmers PFNP @ Razorfish
Programming for Non-programmers PFNP @ Razorfish Programming for Non-programmers PFNP @ Razorfish
Programming for Non-programmers PFNP @ Razorfish
 
Fake it 'til you make it
Fake it 'til you make itFake it 'til you make it
Fake it 'til you make it
 
Bruce Lawson Opera Indonesia
Bruce Lawson Opera IndonesiaBruce Lawson Opera Indonesia
Bruce Lawson Opera Indonesia
 
Performance and User Experience for the Web of Tomorrow
Performance and User Experience for the Web of TomorrowPerformance and User Experience for the Web of Tomorrow
Performance and User Experience for the Web of Tomorrow
 
Programming for Non-Programmers - SXSW Vegas 2014
Programming for Non-Programmers - SXSW Vegas 2014Programming for Non-Programmers - SXSW Vegas 2014
Programming for Non-Programmers - SXSW Vegas 2014
 
Creating Rajanikant Powered Site
Creating Rajanikant Powered SiteCreating Rajanikant Powered Site
Creating Rajanikant Powered Site
 
Responsive design: techniques and tricks to prepare your websites for the mul...
Responsive design: techniques and tricks to prepare your websites for the mul...Responsive design: techniques and tricks to prepare your websites for the mul...
Responsive design: techniques and tricks to prepare your websites for the mul...
 
Rubbing the Sankara Stones the wrong way - From the Front 2014
Rubbing the Sankara Stones the wrong way - From the Front 2014Rubbing the Sankara Stones the wrong way - From the Front 2014
Rubbing the Sankara Stones the wrong way - From the Front 2014
 
CSS3 Media Queries: Mobile Elixir or CSS Snake Oil
CSS3 Media Queries: Mobile Elixir or CSS Snake OilCSS3 Media Queries: Mobile Elixir or CSS Snake Oil
CSS3 Media Queries: Mobile Elixir or CSS Snake Oil
 

More from Heather Rock

GDI Seattle - Intro to JavaScript Class 4
GDI Seattle - Intro to JavaScript Class 4GDI Seattle - Intro to JavaScript Class 4
GDI Seattle - Intro to JavaScript Class 4Heather Rock
 
GDI Seattle Intro to HTML and CSS - Class 4
GDI Seattle Intro to HTML and CSS - Class 4GDI Seattle Intro to HTML and CSS - Class 4
GDI Seattle Intro to HTML and CSS - Class 4Heather Rock
 
GDI Seattle Intro to HTML and CSS - Class 3
GDI Seattle Intro to HTML and CSS - Class 3GDI Seattle Intro to HTML and CSS - Class 3
GDI Seattle Intro to HTML and CSS - Class 3Heather Rock
 
Intro to HTML and CSS - Class 2 Slides
Intro to HTML and CSS - Class 2 SlidesIntro to HTML and CSS - Class 2 Slides
Intro to HTML and CSS - Class 2 SlidesHeather Rock
 
GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1Heather Rock
 
GDI Seattle Intro to HTML and CSS - Class 1
GDI Seattle Intro to HTML and CSS - Class 1GDI Seattle Intro to HTML and CSS - Class 1
GDI Seattle Intro to HTML and CSS - Class 1Heather Rock
 

More from Heather Rock (6)

GDI Seattle - Intro to JavaScript Class 4
GDI Seattle - Intro to JavaScript Class 4GDI Seattle - Intro to JavaScript Class 4
GDI Seattle - Intro to JavaScript Class 4
 
GDI Seattle Intro to HTML and CSS - Class 4
GDI Seattle Intro to HTML and CSS - Class 4GDI Seattle Intro to HTML and CSS - Class 4
GDI Seattle Intro to HTML and CSS - Class 4
 
GDI Seattle Intro to HTML and CSS - Class 3
GDI Seattle Intro to HTML and CSS - Class 3GDI Seattle Intro to HTML and CSS - Class 3
GDI Seattle Intro to HTML and CSS - Class 3
 
Intro to HTML and CSS - Class 2 Slides
Intro to HTML and CSS - Class 2 SlidesIntro to HTML and CSS - Class 2 Slides
Intro to HTML and CSS - Class 2 Slides
 
GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1
 
GDI Seattle Intro to HTML and CSS - Class 1
GDI Seattle Intro to HTML and CSS - Class 1GDI Seattle Intro to HTML and CSS - Class 1
GDI Seattle Intro to HTML and CSS - Class 1
 

Recently uploaded

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 

GDI Seattle - Intermediate HTML and CSS Class 3 Slides

  • 1. INTERMEDIATE HTML AND CSS CLASS 3Intermediate HTML/CSS ~ Girl Develop It ~
  • 2. WELCOME! Girl Develop It is here to provide affordable and accessible programs to learn software through mentorship and hands-on instruction. Some "rules" We are here for you! Every question is important Help each other Have fun
  • 4. MICRODATA Micro-what? From the W3C spec: “Sometimes, it is desirable to annotate content with specific machine-readable labels...” “Microdata allows nested groups of namevalue pairs to be added to documents, in parallel with the existing content.” Microdata Overview
  • 6.
  • 7. MICRODATA Wouldn't it be great if the search results for your restaurant looked like this?
  • 8. MICRODATA Or if search results for your book looked like this?
  • 9. MICRODATA Or if search results for your recipe looked like this?
  • 10. RICH SNIPPETS “The more information a search result snippet can provide, the easier it is for users to decide whether that page is relevant to their search.” Rich snippets
  • 11. RICH SNIPPETS “With rich snippets, webmasters with sites containing structured content...can label their content to make it clear that each labeled piece of text represents a certain type of data: for example, a restaurant name, an address, or a rating.” Rich snippets
  • 12. MICRODATA STRUCTURE We will add microdata to our favorite pizza restaurant <div> L'Amourita Pizza Located at 123 Main St, Albuquerque, NM. Phone: 206-555-1234 <a href="http://pizza.com">http://pizza.com</a> </div>
  • 13. MICRODATA STRUCTURE We need to define three things to add microdata to our sites: Itemscope attribute Itemtype attribute Itemprop attribute
  • 14. MICRODATA STRUCTURE Itemscope <div itemscope> L'Amourita Pizza Located at 123 Main St, Albuquerque, NM. Phone: 206-555-1234 <a href="http://pizza.com">http://pizza.com</a> </div>
  • 15. MICRODATA STRUCTURE Item scope Sets the "scope" of what we are describing with the microdata. All elements nested inside the div with "itemscope" will adhere to the vocabulary we specify with "itemtype". (i.e. person, place, recipe)
  • 16. MICRODATA STRUCTURE Itemtype <div itemscope itemtype="http://schema.org/Organization"> L'Amourita Pizza Located at 123 Main St, Albuquerque, NM. Phone: 206-555-1234 <a href="http://pizza.com">http://pizza.com</a> </div>
  • 17. MICRODATA STRUCTURE Itemtype Points you to the place where a microdata type is defined Since we're defining a business, we want to point to the definition of an Organization defines several type includinghttp://schema.org Organization
  • 18. MICRODATA STRUCTURE Itemprop <div itemscope itemtype ="http://schema.org/Organization"> <span itemprop ="name">L'Amourita Pizza</span> Located at 123 Main St, Albuquerque, NM. Phone: <span itemprop ="tel">206-555-1234</span> <a href="http://pizza.com" itemprop ="url">http://pizza.com</a> </div>
  • 19. MICRODATA STRUCTURE Itemprop Itemprop is a property of your Item's type. The available properties are listed on the relevant page at For our Organization example, the available include are: name, url, address, telephone, and location. For the full list: http://schema.org/docs/schemas http://schema.org/Organization
  • 20. MICRODATA STRUCTURE Itemprop Itemprop is a property of your Item's type. The available properties are listed on the relevant page at Here are properties of a http://schema.org/docs/schemas Recipe
  • 21. NESTED MICRODATA We have specified ALMOST everything for our Organization, but we still don't have entries for the address Addresses are their own unique itemtype. So we need to nest the address information inside a new element with the itemtype set to Address <div itemscope itemtype ="http://schema.org/Organization"> <span itemprop ="name">L'Amourita Pizza</span> Located at 123 Main St, Albuquerque, NM. Phone: <span itemprop ="tel">206-555-1234</span> <a href="http://pizza.com" itemprop ="url">http://pizza.com</a> </div>
  • 22. NESTED MICRODATA <div itemscope itemtype ="http://schema.org/Organization"> <span itemprop ="name">L'Amourita Pizza</span> Located at <span itemprop ="address" itemscope itemtype ="http://schema.org/PostalAddress"> <span itemprop ="streetAddress">123 Main St</span>, <span itemprop ="addressLocality">Albuquerque</span>, <span itemprop ="addressRegion">NM</span>. </span> Phone: <span itemprop ="tel">206-555-1234</span> <a href="http://pizza.com" itemprop ="url">http://pizza.com</a> </div>
  • 23. MICRODATA RESOURCES To make sure google sees your page the way you expect terms of the microdata), use this tool: Getting started guide: Tutorial on microdata from Mark Pilgrim: Google overview of using Microdata for an Organization: http://www.google.com/webmasters/tools/richsnippets http://schema.org/docs/gs.html> http://diveintohtml5.info/extensibility.html http://www.google.com/support/webmasters/bin/answ answer=146861
  • 24. LET'S DEVELOP IT Enhance our Women in Computing web site to use HTML5 & CSS3
  • 25. Use the schema to describe the women in tech. Feel free to add more info than we have to use more itemprops! Person
  • 26. MULTIMEDIA Audio and video are first class citizens in HTML5
  • 27. MULTIMEDIA Useful as a replacement for flash on mobile devices Flash makes mobile devices sad :(
  • 28. VIDEO The Dream The video element was created to make it unnecessary to use plugins to display video content on your pages. The idea is to simplify and streamline video content delivery. <video src="demo.mp4" type="video/mp4"> Your browser does not support the video element. </video>
  • 29. VIDEO The Reality If you want to support ALL browsers and ALL video encodings, you will still need a plugin as a last-resort fall back plan. This is because not all browsers read video the same way, and older browsers (like IE<9) don't support the video element at all.
  • 30. VIDEO The Reality <video id="movie" width="320" height="240" preload controls> <source src="pr6.webm" type='video/webm; codecs="vp8, vorbis"' /> <source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"' /> <source src="pr6.mp4" /> <object width="320" height="240" type="application/x-shockwave-flash" data="flowplayer-3.2.1.swf"> <param name="movie" value="flowplayer-3.2.1.swf" /> <param name="allowfullscreen" value="true" /> <param name="flashvars" value='config={"clip": {"url": "http://wearehugh.com/dih5/pr6.mp4", "autoPlay":false, "autoBuffering ":true}}' /> <p>Download video as <a href="pr6.mp4">MP4</a>, <a href="pr6.webm">WebM</a>, or <a href="pr6.ogv">Ogg</a>.</p> </object> </video> <script> </script> var v = document.getElementById("movie"); v.onclick = function() { if (v.paused) { v.play(); } else { v.pause(); } });
  • 31. AUDIO <audio controls> <source src="music.mp3" type="audio/mpeg"/> <source src="music.aac" type="audio/mp4" /> <source src="music.ogg" type="audio/ogg"/> <!-- now include flash fall back --> </audio>
  • 32. MULTIMEDIA If the dream is still far from reality, what's a dev to do? The good news is, devs are working on it all the time Video on the Web Miro Video Converter Native Audio in the Browser
  • 33. CANVAS Environment for creating dynamic images Canvas element + javascript = dynamic content!
  • 35. CANVAS The first step is to add a canvas element to your HTML. Make sure you give it an id: Unfortunately, everything else (all the cool stuff) is actually in JavaScript and outside the scope of this class <canvas id="myCanvas" width="400" height="400"> Your browser doesn’t support Canvas. </canvas>
  • 36. DEVICE ACCESS Rich, device-aware features and experiences
  • 37. GEOLOCATION Browsers using HTML5 can locate you through IP addresses, WiFi connections, and GPS towers (for mobile phones and tablets) But all the cool interactive stuff is, once again, done in JavaScript You didn't expect HTML and CSS to do EVERYTHING, did you? Google Map
  • 39. STORAGE You can use HTML5 Web Storage to persist simple data. Two kinds of HTML5 Web Storage: SessionStorage for per-window data LocalStorage for global, persistent data (stored to hard drive through the browser)
  • 40. SESSIONSTORAGE Ever accidentally bought two of the same kind of ticket, because you were shopping the same site in multiple windows/tabs? Session Storage provides a good way to prevent this. Session Storage is not saved to the user’s hard drive It only lasts for the time that a browser window or tab is open and viewing a specific site.
  • 41. LOCALSTORAGE With Local Storage, we can save data to the user’s computer, via the browser. When a user revisits a site in the same browser they first visited in, any data saved to Local Storage can be retrieved. Local Storage is browser-specific: Information you save while browsing with Firefox will NOT be available to Safari.