SlideShare ist ein Scribd-Unternehmen logo
1 von 136
RESPONSIVE
RETROFITTING
Christopher Schmitt
@teleject
http://E4H.tv
WHAT IS THE
WEB
“This is the web
@brad_frost
“
@brad_frost
Cars with their wifi and built-in browsers.
THE
CASE
FOR RESPONSIVE
“This is the web
@brad_frost
RESPONSIVE CONSIDERATIONS
➤ Different screen sizes from
various devices means our
designs need to scale
➤ Different resolutions of those
screens means our images
need to stay sharp.
➤ Different speeds of internet
(Hotel wifi vs Google Fiber)
means we need to optimize
performance, speed.
THE
CASE
FOR RETROFITTING
RETROFITTING
ALLOWS YOU TO
KEEP THE SAME DESIGN
RETROFITTING
ALLOWS YOU TO
SAVE MONEY
RETROFITTING
ALLOWS YOU TO
SAVE TIME
RETROFITTING
ALLOWS YOU TO PLAN
WHEN TO GO FULL RWD
GO RETROFITTING
➤ Keep the same design
➤ Same UI, happy current
visitors and members
➤ Saves money
➤ Saves time
➤ Plan on full RWD experience
when the time and budget
works for you.
➤ Until then…
LOOKING INTO
WORD
PRESS
FOR RETROFITTING
Find a RWD Theme and switch to it. Or use underscores.me and start
building your own.
DEVPRESS THEMES
WORDPRESS
PLUGINS
IN RETROFITTING
REGENERATE THUMBNAILS
You can either regenerate the thumbnails for all image uploads,
individual image uploads, or specific multiple image uploads.
RWD IMG PLUGIN/WP 4.4+
<img width="720" height="480" src="http://
christopher.org/wp-content/uploads/2016/03/zell-
leiw-720x480.jpg" class="attachment-post-
thumbnail size-post-thumbnail wp-post-image"
alt="Zell Leiw">
<img width="720" height="480" src="http://
christopher.org/wp-content/uploads/2016/03/zell-
leiw-720x480.jpg" class="attachment-post-
thumbnail size-post-thumbnail wp-post-image"
alt="Zell Leiw" 

srcset="http://christopher.org/wp-content/
uploads/2016/03/zell-leiw-300x200.jpg 300w, 

http://christopher.org/wp-content/uploads/
2016/03/zell-leiw-768x512.jpg 768w, 

http://christopher.org/wp-content/uploads/
2016/03/zell-leiw-720x480.jpg 720w, 

http://christopher.org/wp-content/uploads/
2016/03/zell-leiw.jpg 800w" 

sizes="(max-width: 720px) 100vw, 720px">
SVG SUPPORT
W3 TOTAL CACHE
ADVANCED CACHING
AUTOPTIMIZE
<link type="text/css" media="all" href="/wp-
content/cache/autoptimize/css/
autoptimize_cb0a81ff0ddb86313b4880477e53c478.css"
rel="stylesheet" />
<script type="text/javascript" src="/wp-content/
cache/autoptimize/js/
autoptimize_2523fe169871bce9a1795831e486b2ed.js">
</script>
OPTIMIZING
IMAGES
IN RETROFITTING
72PPI
72 points-per-inch =
72 pixels-per-inch
96PPI
IF A WINDOWS USER
72 points-per-inch
x [1+(1/3)]
= 96 PPI
78μm
“RETINA” DISPLAYS
300ppi at 12 inches from the eyes
“[In 2013, Intel sees their product line]
offer a higher resolution experience
than a top-of-the-line 1080p HDTV.”
72 PPI
240
240 PPI
240 PPI
72 PPI
72ppi “Retina”
4x
LOW FILES ARE KEY:
OPTIMIZATION
HTML5 ELEMENTS:
SRCSET
<img src="swing-400.jpg" alt="Kettlebell Swing">
<img
srcset="swing-200.jpg 200w,
swing-400.jpg 400w,
swing-800.jpg 800w,
swing-1600.jpg 1600w"
src="swing-400.jpg" alt="Kettlebell Swing">
<img
srcset="swing-200.jpg 200w,
swing-400.jpg 400w,
swing-800.jpg 800w,
swing-1600.jpg 1600w"
src="swing-400.jpg" alt="Kettlebell Swing">
<img
srcset="swing-200.jpg 200w,
swing-400.jpg 400w,
swing-800.jpg 800w,
swing-1600.jpg 1600w"
src="swing-400.jpg" alt="Kettlebell Swing">
HTML5 ELEMENTS:
SRCSET+SIZES
<img sizes="(min-width: 30em) 100vw,
(min-width: 50em) 50vw, 200px"
srcset="swing-200.jpg 200w,
swing-400.jpg 400w,
swing-800.jpg 800w,
swing-1600.jpg 1600w"
src="swing-400.jpg" alt="Kettlebell Swing">
<img sizes="(min-width: 30em) 100vw,
(min-width: 50em) 50vw, 200px"
srcset="swing-200.jpg 200w,
swing-400.jpg 400w,
swing-800.jpg 800w,
swing-1600.jpg 1600w"
src="swing-400.jpg" alt="Kettlebell Swing">
<img sizes="(min-width: 30em) 100vw,
(min-width: 50em) 50vw, 200px"
srcset="swing-200.jpg 200w,
swing-400.jpg 400w,
swing-800.jpg 800w,
swing-1600.jpg 1600w"
src="swing-400.jpg" alt="Kettlebell Swing">
<img sizes="(min-width: 30em) 100vw,
(min-width: 50em) 50vw, 200px"
srcset="swing-200.jpg 200w,
swing-400.jpg 400w,
swing-800.jpg 800w,
swing-1600.jpg 1600w"
src="swing-400.jpg" alt="Kettlebell Swing">
…BUT IT’S ALL REALLY
FOR BROWSER TO DECIDE.
SIMPLE SETUP
<img src="rock-climbing-400px.jpg"
alt="Mountain Climber" />
<img src="rock-climbing-400px.jpg"
srcset="rock-climbing-400px.jpg 400w,
rock-climbing-compressed.jpg 600w"
alt="Mountain Climber" />
<img src="rock-climbing-400px.jpg"
srcset="rock-climbing-400px.jpg 400w,
rock-climbing-compressed.jpg 600w"
sizes="100vw"
alt="Mountain Climber" />
SCALABLE VECTOR
GRAPHIC IMAGES
PNG 16kb
SVG 7kb
HTML
TABLES
IN RETROFITTING
#1
@media
only screen and (max-width: 760px),
(min-device-width: 768px) and (max-device-width: 1024px) {
/* Force table to not be like tables anymore */
table, thead, tbody, th, td, tr {
display: block;
}
/* Hide table headers (but not display: none;, for accessibility) */
thead tr {
position: absolute;
top: -9999px;
left: -9999px;
}
tr { border: 1px solid #ccc; }
td {
/* Behave like a "row" */
border: none;
border-bottom: 1px solid #eee;
position: relative;
padding-left: 50%;
}
td:before {
/* Now like a table header */
position: absolute;
/* Top/left values mimic padding */
xtop: 6px;
xleft: 6px;
left: 50%;
@media
only screen and (max-width: 760px),
(min-device-width: 768px) and (max-device-
width: 1024px)
@media
only screen and (max-width: 760px),
(min-device-width: 768px) and (max-device-width: 1024px) {
/* Force table to not be like tables anymore */
table, thead, tbody, th, td, tr {
display: block;
}
/* Hide table headers (but not display: none;, for accessibility) */
thead tr {
position: absolute;
top: -9999px;
left: -9999px;
}
tr { border: 1px solid #ccc; }
td {
/* Behave like a "row" */
border: none;
border-bottom: 1px solid #eee;
position: relative;
padding-left: 50%;
}
td:before {
/* Now like a table header */
position: absolute;
/* Top/left values mimic padding */
xtop: 6px;
xleft: 6px;
left: 50%;
/* Force table to not be like tables anymore */
table, thead, tbody, th, td, tr {
display: block;
}
@media
only screen and (max-width: 760px),
(min-device-width: 768px) and (max-device-width: 1024px) {
/* Force table to not be like tables anymore */
table, thead, tbody, th, td, tr {
display: block;
}
/* Hide table headers (but not display: none;, for accessibility) */
thead tr {
position: absolute;
top: -9999px;
left: -9999px;
}
tr { border: 1px solid #ccc; }
td {
/* Behave like a "row" */
border: none;
border-bottom: 1px solid #eee;
position: relative;
padding-left: 50%;
}
td:before {
/* Now like a table header */
position: absolute;
/* Top/left values mimic padding */
xtop: 6px;
xleft: 6px;
left: 50%;
/* Hide table headers (but not display: none;,
for accessibility) */
thead tr {
position: absolute;
top: -9999px;
left: -9999px;
}
@media
only screen and (max-width: 760px),
(min-device-width: 768px) and (max-device-width: 1024px) {
/* Force table to not be like tables anymore */
table, thead, tbody, th, td, tr {
display: block;
}
/* Hide table headers (but not display: none;, for accessibility) */
thead tr {
position: absolute;
top: -9999px;
left: -9999px;
}
tr { border: 1px solid #ccc; }
td {
/* Behave like a "row" */
border: none;
border-bottom: 1px solid #eee;
position: relative;
padding-left: 50%;
}
td:before {
/* Now like a table header */
position: absolute;
/* Top/left values mimic padding */
xtop: 6px;
xleft: 6px;
left: 50%;
tr { border: 1px solid #ccc; }
td {
/* Behave like a "row" */
border: none;
border-bottom: 1px solid #eee;
position: relative;
padding-left: 50%;
}
@media
only screen and (max-width: 760px),
(min-device-width: 768px) and (max-device-width: 1024px) {
/* Force table to not be like tables anymore */
table, thead, tbody, th, td, tr {
display: block;
}
/* Hide table headers (but not display: none;, for accessibility) */
thead tr {
position: absolute;
top: -9999px;
left: -9999px;
}
tr { border: 1px solid #ccc; }
td {
/* Behave like a "row" */
border: none;
border-bottom: 1px solid #eee;
position: relative;
padding-left: 50%;
}
td:before {
/* Now like a table header */
position: absolute;
/* Top/left values mimic padding */
left: 50%;
top: 50%;
transform: translate(-70%, -50%);
width: 50%;
padding-right: 10px;
white-space: nowrap;
}
td:before {
/* Now like a table header */
position: absolute;
/* Top/left values mimic padding */
left: 50%;
top: 50%;
transform: translate(-70%, -50%);
width: 50%;
padding-right: 10px;
white-space: nowrap;
}
position: absolute;
top: -9999px;
left: -9999px;
}
tr { border: 1px solid #ccc; }
td {
/* Behave like a "row" */
border: none;
border-bottom: 1px solid #eee;
position: relative;
padding-left: 50%;
}
td:before {
/* Now like a table header */
position: absolute;
/* Top/left values mimic padding */
left: 50%;
top: 50%;
transform: translate(-70%, -50%);
width: 50%;
padding-right: 10px;
white-space: nowrap;
}
/*
Label the data
*/
td:nth-of-type(1):before { content: "Film"; }
td:nth-of-type(2):before { content: "Release Date"; }
td:nth-of-type(3):before { content: "Director"; }
td:nth-of-type(4):before { content: "Screenwriter(s)"; }
td:nth-of-type(5):before { content: "Producer"; }
td:nth-of-type(6):before { content: "Distributor"; }
td:nth-of-type(7):before { content: "Status"; }
}
/*
Label the data
*/
td:nth-of-type(1):before { content: "Film"; }
td:nth-of-type(2):before { content: "Release Date"; }
td:nth-of-type(3):before { content: "Director"; }
td:nth-of-type(4):before { content:
“Screenwriter(s)";}
td:nth-of-type(5):before { content: "Producer"; }
td:nth-of-type(6):before { content: "Distributor"; }
td:nth-of-type(7):before { content: "Status"; }
}
#2
/* Attach the Table CSS and Javascript */
<link rel="stylesheet" href="responsive-tables.css">
<script src="stylesheet" href="responsive-
tables.js"></script>
/* Put the responsive class on the table */
<table class="responsive">
<tr> …
MENU
NAV
IN RETROFITTING
#1
.nav ul {
display: none;
list-style: none;
padding: 0px;
margin: 0px;
font-weight: bold;
text-align: center;
}
.nav ul li {
display: inline-block;
text-align: left;
}
.nav ul li a {
display: block;
padding: 15px 10px;
text-decoration: none;
color: #444;
}
.nav ul li a:hover {
background-color: #ccc;
}
.anchor-link {
display: inline-block;
text-align: center;
padding: 10px 15px;
color: #fff;
background-color: #0084B4;
text-decoration: none; margin: 3px; float: right;
}
.example-footer {
font-size: 1.1em;
.nav ul {
display: none;
list-style: none;
padding: 0px;
margin: 0px;
font-weight: bold;
text-align: center;
}
.nav ul li {
display: inline-block;
text-align: left;
}
.nav ul li a {
display: block;
padding: 15px 10px;
text-decoration: none;
color: #444;
}
.nav ul li a:hover {
background-color: #ccc;
}
.nav ul {
display: none;
list-style: none;
padding: 0px;
margin: 0px;
font-weight: bold;
text-align: center;
}
.nav ul li {
display: inline-block;
text-align: left;
}
.nav ul li a {
display: block;
padding: 15px 10px;
text-decoration: none;
color: #444;
}
.nav ul li a:hover {
background-color: #ccc;
}
.anchor-link {
display: inline-block;
text-align: center;
padding: 10px 15px;
color: #fff;
background-color: #0084B4;
text-decoration: none;
margin: 3px;
float: right;
}
.example-footer {
.anchor-link {
display: inline-block;
text-align: center;
padding: 10px 15px;
color: #fff;
background-color: #0084B4;
text-decoration: none;
margin: 3px;
float: right;
}
margin: 3px;
float: right;
}
.example-footer {
font-size: 1.1em;
}
#mobile-nav {
display: block;
}
#mobile-nav ul {
list-style: none;
margin: 0px;
padding: 0px;
}
#mobile-nav ul li {
list-style: none;
text-align: center;
}
#mobile-nav ul li a {
display: block;
padding: 20px 10px;
border-bottom: 1px solid #ccc;
text-decoration: none;
}
#mobile-nav ul li a:hover {
background-color: #ccc;
color: #fff;
}
@media all and (min-width:48em){
.nav ul { display: block; }
.anchor-link { display: none; }
#mobile-nav { display: none; }
}
@media all and (min-width: 48em){
.nav ul { display: block; }
.anchor-link { display: none; }
#mobile-nav { display: none; }
}
#2
.nav ul li {
display: inline-block;
}
.nav ul li a {
display: block;
padding: 10px 20px;
text-decoration: none;
color: #444;
}
.nav ul li a:hover {
background-color: #888;
color: #fff;
}
@media (max-width:48.000em){
.example-header .container {
width: 100%;
}
.nav ul {
width: 100%;
font-weight: normal;
}
.nav ul li {
width: 50%;
float: left;
}
.nav ul li:nth-of-type(odd) a {
border-right: 1px solid #ccc;
}
.nav ul li a {
padding: 8px 0px;
border-bottom: 1px solid #ccc;
display: block;
}
}
@media (max-width:48.000em){
.example-header .container {
width: 100%;
}
.nav ul {
width: 100%;
font-weight: normal;
}
.nav ul li {
width: 50%;
float: left;
}
.nav ul li:nth-of-type(odd) a {
border-right: 1px solid #ccc;
}
.nav ul li a {
padding: 8px 0px;
border-bottom: 1px solid #ccc;
display: block;
}
}
.nav {
width: 100%;
}
.nav ul {
list-style: none;
padding: 0px;
margin: 0px;
font-weight: bold;
text-align: center;
}
.nav ul li {
display: inline-block;
}
.nav ul li a {
display: block;
padding: 10px 20px;
text-decoration: none;
color: #444;
}
.nav ul li a:hover {
background-color: #888;
color: #fff;
}
@media (max-width:48.000em){
.example-header .container {
width: 100%;
}
.nav ul {
width: 100%;
font-weight: normal;
}
.nav ul li {
width: 50%;
.nav {
width: 100%;
}
.nav ul {
list-style: none;
padding: 0px;
margin: 0px;
font-weight: bold;
text-align: center;
}
.nav ul li {
display: inline-block;
}
.nav ul li a {
display: block;
padding: 10px 20px;
text-decoration: none;
color: #444;
}
.nav ul li a:hover {
background-color: #888;
color: #fff;
}
#3
$(function () {
$(“.nav>ul").tinyNav();
});
/* styles for desktop */
.tinynav {
display: none
}
/* styles for mobile */
@media screen and (max-width: 600px) {
.tinynav {
display: block;
margin: 1em auto; }
#nav {
display: none;
}
}
#4
http://codepen.io/teleject/pen/BKzBbd/
.anchor-link {
display: none;
text-align:
right; padding: 0 1em 0;
text-align: center;
padding: 10px 15px;
color: #fff;
background-color: #0084B4; text-decoration:
none; margin: 3px;
float: right;
}
#mobile-nav {
display:none;
}
@media (max-width:48.000em){
ul.simple-toggle {
display: none;
}
.anchor-link, #mobile-nav {
display: block;
}
ul.open {
background-color: #F4F4F4;
box-shadow: 2px 2px 3px #444444;
display: block;
list-style: none outside none;
margin: 0;
padding: 0;
position: absolute;
right: 5px;
top: 100%;
width: 70%;
z-index: 500;
$(document).ready(function() {
$('#menu-toggle').click(function () {
$('#menu').toggleClass('open');
e.preventDefault();
});
});
http://codepen.io/teleject/pen/ONXLgR
GO RETROFITTING
➤ Keep the same design
➤ Same UI, happy current
visitors and members
➤ Saves money
➤ Saves time
➤ Plan on full RWD experience
when the time and budget
works for you.
➤ Until then…
“
@brad_frost
Beyond the web, the internet of things and voice
FIND ME AT
➤ TWITTER @teleject
➤ EMAIL schmitt@christopher.org
➤ WEB http://christopher.org
➤ Hosting virtual Responsive Web Design Summit March 29-31
➤ http://RWDSummit.com/

Weitere ähnliche Inhalte

Andere mochten auch

Structural health monitoring 2011-wei fan-83-111
Structural health monitoring 2011-wei fan-83-111Structural health monitoring 2011-wei fan-83-111
Structural health monitoring 2011-wei fan-83-111Hajar Ch
 
SEISMIC STRUCTURAL HEALTH MONITORING AND REAL‐TIME DATA BROADCASTING SPECIAL ...
SEISMIC STRUCTURAL HEALTH MONITORING AND REAL‐TIME DATA BROADCASTING SPECIAL ...SEISMIC STRUCTURAL HEALTH MONITORING AND REAL‐TIME DATA BROADCASTING SPECIAL ...
SEISMIC STRUCTURAL HEALTH MONITORING AND REAL‐TIME DATA BROADCASTING SPECIAL ...Full Scale Dynamics
 
Seismic Considerations Seminar | Portland, Oregon
Seismic Considerations Seminar | Portland, OregonSeismic Considerations Seminar | Portland, Oregon
Seismic Considerations Seminar | Portland, OregonNishkianDean
 
Seismic Vulnerability Assessment Using Field Survey and Remote Sensing Techni...
Seismic Vulnerability Assessment Using Field Survey and Remote Sensing Techni...Seismic Vulnerability Assessment Using Field Survey and Remote Sensing Techni...
Seismic Vulnerability Assessment Using Field Survey and Remote Sensing Techni...Maurizio Pollino
 
Structural Health Monitoring platform presentation at NI week 2016
Structural Health Monitoring platform presentation at NI week 2016Structural Health Monitoring platform presentation at NI week 2016
Structural Health Monitoring platform presentation at NI week 2016IRS srl
 
Offshore research measurements & focus on structural health monitoring
Offshore research measurements & focus on structural health monitoringOffshore research measurements & focus on structural health monitoring
Offshore research measurements & focus on structural health monitoringPieter Jan Jordaens
 
Concrete Restoration
Concrete RestorationConcrete Restoration
Concrete RestorationAmy Lin
 
Preventive Maintenance: Tips to Reduce Facility Costs and Breakdowns
Preventive Maintenance: Tips to Reduce Facility Costs and Breakdowns Preventive Maintenance: Tips to Reduce Facility Costs and Breakdowns
Preventive Maintenance: Tips to Reduce Facility Costs and Breakdowns Facility Masters
 
Start & Maintain an Energy Management Plan: It Makes Good Sense (from ASBO MD...
Start & Maintain an Energy Management Plan: It Makes Good Sense (from ASBO MD...Start & Maintain an Energy Management Plan: It Makes Good Sense (from ASBO MD...
Start & Maintain an Energy Management Plan: It Makes Good Sense (from ASBO MD...SchoolDude
 
Maintenance Management
Maintenance ManagementMaintenance Management
Maintenance ManagementRohit Bisht
 
Structural Health Monitoring: The paradigm and the benefits shown in some mon...
Structural Health Monitoring: The paradigm and the benefits shown in some mon...Structural Health Monitoring: The paradigm and the benefits shown in some mon...
Structural Health Monitoring: The paradigm and the benefits shown in some mon...Full Scale Dynamics
 

Andere mochten auch (16)

Structural health monitoring 2011-wei fan-83-111
Structural health monitoring 2011-wei fan-83-111Structural health monitoring 2011-wei fan-83-111
Structural health monitoring 2011-wei fan-83-111
 
SEISMIC STRUCTURAL HEALTH MONITORING AND REAL‐TIME DATA BROADCASTING SPECIAL ...
SEISMIC STRUCTURAL HEALTH MONITORING AND REAL‐TIME DATA BROADCASTING SPECIAL ...SEISMIC STRUCTURAL HEALTH MONITORING AND REAL‐TIME DATA BROADCASTING SPECIAL ...
SEISMIC STRUCTURAL HEALTH MONITORING AND REAL‐TIME DATA BROADCASTING SPECIAL ...
 
Seismic Considerations Seminar | Portland, Oregon
Seismic Considerations Seminar | Portland, OregonSeismic Considerations Seminar | Portland, Oregon
Seismic Considerations Seminar | Portland, Oregon
 
Seismic Vulnerability Assessment Using Field Survey and Remote Sensing Techni...
Seismic Vulnerability Assessment Using Field Survey and Remote Sensing Techni...Seismic Vulnerability Assessment Using Field Survey and Remote Sensing Techni...
Seismic Vulnerability Assessment Using Field Survey and Remote Sensing Techni...
 
Structural Health Monitoring platform presentation at NI week 2016
Structural Health Monitoring platform presentation at NI week 2016Structural Health Monitoring platform presentation at NI week 2016
Structural Health Monitoring platform presentation at NI week 2016
 
Green Retrofitting 101
Green Retrofitting 101Green Retrofitting 101
Green Retrofitting 101
 
Offshore research measurements & focus on structural health monitoring
Offshore research measurements & focus on structural health monitoringOffshore research measurements & focus on structural health monitoring
Offshore research measurements & focus on structural health monitoring
 
Concrete Restoration
Concrete RestorationConcrete Restoration
Concrete Restoration
 
Preventive Maintenance: Tips to Reduce Facility Costs and Breakdowns
Preventive Maintenance: Tips to Reduce Facility Costs and Breakdowns Preventive Maintenance: Tips to Reduce Facility Costs and Breakdowns
Preventive Maintenance: Tips to Reduce Facility Costs and Breakdowns
 
building services
building servicesbuilding services
building services
 
Retrofitting and rehabilitation
Retrofitting and rehabilitationRetrofitting and rehabilitation
Retrofitting and rehabilitation
 
Start & Maintain an Energy Management Plan: It Makes Good Sense (from ASBO MD...
Start & Maintain an Energy Management Plan: It Makes Good Sense (from ASBO MD...Start & Maintain an Energy Management Plan: It Makes Good Sense (from ASBO MD...
Start & Maintain an Energy Management Plan: It Makes Good Sense (from ASBO MD...
 
Maintenance Management
Maintenance ManagementMaintenance Management
Maintenance Management
 
Considerations for Seismic Retrofitting
Considerations for Seismic RetrofittingConsiderations for Seismic Retrofitting
Considerations for Seismic Retrofitting
 
STAAD PRO
STAAD PRO STAAD PRO
STAAD PRO
 
Structural Health Monitoring: The paradigm and the benefits shown in some mon...
Structural Health Monitoring: The paradigm and the benefits shown in some mon...Structural Health Monitoring: The paradigm and the benefits shown in some mon...
Structural Health Monitoring: The paradigm and the benefits shown in some mon...
 

Mehr von Christopher Schmitt

Keeping Colors from Killing Your Product
Keeping Colors from Killing Your ProductKeeping Colors from Killing Your Product
Keeping Colors from Killing Your ProductChristopher Schmitt
 
[funka] Adaptive Images in Responsive Web Design
[funka] Adaptive Images in Responsive Web Design[funka] Adaptive Images in Responsive Web Design
[funka] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[Austin WordPress Meetup] Adaptive Images in Responsive Web Design
[Austin WordPress Meetup] Adaptive Images in Responsive Web Design[Austin WordPress Meetup] Adaptive Images in Responsive Web Design
[Austin WordPress Meetup] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[CSSDevConf] Adaptive Images in Responsive Web Design 2014
[CSSDevConf] Adaptive Images in Responsive Web Design 2014[CSSDevConf] Adaptive Images in Responsive Web Design 2014
[CSSDevConf] Adaptive Images in Responsive Web Design 2014Christopher Schmitt
 
[rwdsummit] Adaptive Images in Responsive Web Design
[rwdsummit] Adaptive Images in Responsive Web Design[rwdsummit] Adaptive Images in Responsive Web Design
[rwdsummit] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[artifactconf] Github for People Who Don't Code
[artifactconf] Github for People Who Don't Code[artifactconf] Github for People Who Don't Code
[artifactconf] Github for People Who Don't CodeChristopher Schmitt
 
[cssdevconf] Adaptive Images in Responsive Web Design
[cssdevconf] Adaptive Images in Responsive Web Design[cssdevconf] Adaptive Images in Responsive Web Design
[cssdevconf] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[parisweb] Adaptive Images in Responsive Web Design
[parisweb] Adaptive Images in Responsive Web Design[parisweb] Adaptive Images in Responsive Web Design
[parisweb] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[peachpit] Adaptive Images in Responsive Web Design
[peachpit] Adaptive Images in Responsive Web Design[peachpit] Adaptive Images in Responsive Web Design
[peachpit] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[jqconatx] Adaptive Images for Responsive Web Design
[jqconatx] Adaptive Images for Responsive Web Design[jqconatx] Adaptive Images for Responsive Web Design
[jqconatx] Adaptive Images for Responsive Web DesignChristopher Schmitt
 
[wvbcn] Adaptive Images in Responsive Web Design
[wvbcn] Adaptive Images in Responsive Web Design[wvbcn] Adaptive Images in Responsive Web Design
[wvbcn] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[drupalcampatx] Adaptive Images in Responsive Web Design
[drupalcampatx] Adaptive Images in Responsive Web Design[drupalcampatx] Adaptive Images in Responsive Web Design
[drupalcampatx] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[refreshpitt] Adaptive Images in Responsive Web Design
[refreshpitt] Adaptive Images in Responsive Web Design[refreshpitt] Adaptive Images in Responsive Web Design
[refreshpitt] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[psuweb] Adaptive Images in Responsive Web Design
[psuweb] Adaptive Images in Responsive Web Design[psuweb] Adaptive Images in Responsive Web Design
[psuweb] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
GitHub for People Who Don't Code
GitHub for People Who Don't CodeGitHub for People Who Don't Code
GitHub for People Who Don't CodeChristopher Schmitt
 
[wcatx] Adaptive Images in Responsive Web Design
[wcatx] Adaptive Images in Responsive Web Design[wcatx] Adaptive Images in Responsive Web Design
[wcatx] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[HEWEBFL] Adaptive Images in Responsive Web Design
[HEWEBFL] Adaptive Images in Responsive Web Design[HEWEBFL] Adaptive Images in Responsive Web Design
[HEWEBFL] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web DesignChristopher Schmitt
 
[sxsw2013] Extremely Compressed JPEGs
[sxsw2013] Extremely Compressed JPEGs[sxsw2013] Extremely Compressed JPEGs
[sxsw2013] Extremely Compressed JPEGsChristopher Schmitt
 

Mehr von Christopher Schmitt (20)

Keeping Colors from Killing Your Product
Keeping Colors from Killing Your ProductKeeping Colors from Killing Your Product
Keeping Colors from Killing Your Product
 
[funka] Adaptive Images in Responsive Web Design
[funka] Adaptive Images in Responsive Web Design[funka] Adaptive Images in Responsive Web Design
[funka] Adaptive Images in Responsive Web Design
 
[Austin WordPress Meetup] Adaptive Images in Responsive Web Design
[Austin WordPress Meetup] Adaptive Images in Responsive Web Design[Austin WordPress Meetup] Adaptive Images in Responsive Web Design
[Austin WordPress Meetup] Adaptive Images in Responsive Web Design
 
[CSSDevConf] Adaptive Images in Responsive Web Design 2014
[CSSDevConf] Adaptive Images in Responsive Web Design 2014[CSSDevConf] Adaptive Images in Responsive Web Design 2014
[CSSDevConf] Adaptive Images in Responsive Web Design 2014
 
[rwdsummit] Adaptive Images in Responsive Web Design
[rwdsummit] Adaptive Images in Responsive Web Design[rwdsummit] Adaptive Images in Responsive Web Design
[rwdsummit] Adaptive Images in Responsive Web Design
 
[artifactconf] Github for People Who Don't Code
[artifactconf] Github for People Who Don't Code[artifactconf] Github for People Who Don't Code
[artifactconf] Github for People Who Don't Code
 
[cssdevconf] Adaptive Images in Responsive Web Design
[cssdevconf] Adaptive Images in Responsive Web Design[cssdevconf] Adaptive Images in Responsive Web Design
[cssdevconf] Adaptive Images in Responsive Web Design
 
[parisweb] Adaptive Images in Responsive Web Design
[parisweb] Adaptive Images in Responsive Web Design[parisweb] Adaptive Images in Responsive Web Design
[parisweb] Adaptive Images in Responsive Web Design
 
[peachpit] Adaptive Images in Responsive Web Design
[peachpit] Adaptive Images in Responsive Web Design[peachpit] Adaptive Images in Responsive Web Design
[peachpit] Adaptive Images in Responsive Web Design
 
[jqconatx] Adaptive Images for Responsive Web Design
[jqconatx] Adaptive Images for Responsive Web Design[jqconatx] Adaptive Images for Responsive Web Design
[jqconatx] Adaptive Images for Responsive Web Design
 
[wvbcn] Adaptive Images in Responsive Web Design
[wvbcn] Adaptive Images in Responsive Web Design[wvbcn] Adaptive Images in Responsive Web Design
[wvbcn] Adaptive Images in Responsive Web Design
 
[drupalcampatx] Adaptive Images in Responsive Web Design
[drupalcampatx] Adaptive Images in Responsive Web Design[drupalcampatx] Adaptive Images in Responsive Web Design
[drupalcampatx] Adaptive Images in Responsive Web Design
 
[refreshpitt] Adaptive Images in Responsive Web Design
[refreshpitt] Adaptive Images in Responsive Web Design[refreshpitt] Adaptive Images in Responsive Web Design
[refreshpitt] Adaptive Images in Responsive Web Design
 
[psuweb] Adaptive Images in Responsive Web Design
[psuweb] Adaptive Images in Responsive Web Design[psuweb] Adaptive Images in Responsive Web Design
[psuweb] Adaptive Images in Responsive Web Design
 
GitHub for People Who Don't Code
GitHub for People Who Don't CodeGitHub for People Who Don't Code
GitHub for People Who Don't Code
 
[wcatx] Adaptive Images in Responsive Web Design
[wcatx] Adaptive Images in Responsive Web Design[wcatx] Adaptive Images in Responsive Web Design
[wcatx] Adaptive Images in Responsive Web Design
 
[HEWEBFL] Adaptive Images in Responsive Web Design
[HEWEBFL] Adaptive Images in Responsive Web Design[HEWEBFL] Adaptive Images in Responsive Web Design
[HEWEBFL] Adaptive Images in Responsive Web Design
 
[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design[refreshaustin] Adaptive Images in Responsive Web Design
[refreshaustin] Adaptive Images in Responsive Web Design
 
[sxsw2013] Extremely Compressed JPEGs
[sxsw2013] Extremely Compressed JPEGs[sxsw2013] Extremely Compressed JPEGs
[sxsw2013] Extremely Compressed JPEGs
 
[amigos] HTML5 and CSS3
[amigos] HTML5 and CSS3[amigos] HTML5 and CSS3
[amigos] HTML5 and CSS3
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdfChristopherTHyatt
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 

Kürzlich hochgeladen (20)

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 

Responsive Retrofitting

  • 3. “This is the web @brad_frost
  • 5. Cars with their wifi and built-in browsers.
  • 7. “This is the web @brad_frost
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. RESPONSIVE CONSIDERATIONS ➤ Different screen sizes from various devices means our designs need to scale ➤ Different resolutions of those screens means our images need to stay sharp. ➤ Different speeds of internet (Hotel wifi vs Google Fiber) means we need to optimize performance, speed.
  • 19. RETROFITTING ALLOWS YOU TO PLAN WHEN TO GO FULL RWD
  • 20. GO RETROFITTING ➤ Keep the same design ➤ Same UI, happy current visitors and members ➤ Saves money ➤ Saves time ➤ Plan on full RWD experience when the time and budget works for you. ➤ Until then…
  • 21.
  • 23. Find a RWD Theme and switch to it. Or use underscores.me and start building your own.
  • 27. You can either regenerate the thumbnails for all image uploads, individual image uploads, or specific multiple image uploads.
  • 29.
  • 30. <img width="720" height="480" src="http:// christopher.org/wp-content/uploads/2016/03/zell- leiw-720x480.jpg" class="attachment-post- thumbnail size-post-thumbnail wp-post-image" alt="Zell Leiw">
  • 31. <img width="720" height="480" src="http:// christopher.org/wp-content/uploads/2016/03/zell- leiw-720x480.jpg" class="attachment-post- thumbnail size-post-thumbnail wp-post-image" alt="Zell Leiw" 
 srcset="http://christopher.org/wp-content/ uploads/2016/03/zell-leiw-300x200.jpg 300w, 
 http://christopher.org/wp-content/uploads/ 2016/03/zell-leiw-768x512.jpg 768w, 
 http://christopher.org/wp-content/uploads/ 2016/03/zell-leiw-720x480.jpg 720w, 
 http://christopher.org/wp-content/uploads/ 2016/03/zell-leiw.jpg 800w" 
 sizes="(max-width: 720px) 100vw, 720px">
  • 33.
  • 35.
  • 38. <link type="text/css" media="all" href="/wp- content/cache/autoptimize/css/ autoptimize_cb0a81ff0ddb86313b4880477e53c478.css" rel="stylesheet" /> <script type="text/javascript" src="/wp-content/ cache/autoptimize/js/ autoptimize_2523fe169871bce9a1795831e486b2ed.js"> </script>
  • 40. 72PPI
  • 41. 72 points-per-inch = 72 pixels-per-inch
  • 44. 78μm “RETINA” DISPLAYS 300ppi at 12 inches from the eyes
  • 45.
  • 46. “[In 2013, Intel sees their product line] offer a higher resolution experience than a top-of-the-line 1080p HDTV.”
  • 48. 240
  • 53. 4x
  • 54. LOW FILES ARE KEY: OPTIMIZATION
  • 55.
  • 56.
  • 59. <img srcset="swing-200.jpg 200w, swing-400.jpg 400w, swing-800.jpg 800w, swing-1600.jpg 1600w" src="swing-400.jpg" alt="Kettlebell Swing">
  • 60. <img srcset="swing-200.jpg 200w, swing-400.jpg 400w, swing-800.jpg 800w, swing-1600.jpg 1600w" src="swing-400.jpg" alt="Kettlebell Swing">
  • 61. <img srcset="swing-200.jpg 200w, swing-400.jpg 400w, swing-800.jpg 800w, swing-1600.jpg 1600w" src="swing-400.jpg" alt="Kettlebell Swing">
  • 63. <img sizes="(min-width: 30em) 100vw, (min-width: 50em) 50vw, 200px" srcset="swing-200.jpg 200w, swing-400.jpg 400w, swing-800.jpg 800w, swing-1600.jpg 1600w" src="swing-400.jpg" alt="Kettlebell Swing">
  • 64. <img sizes="(min-width: 30em) 100vw, (min-width: 50em) 50vw, 200px" srcset="swing-200.jpg 200w, swing-400.jpg 400w, swing-800.jpg 800w, swing-1600.jpg 1600w" src="swing-400.jpg" alt="Kettlebell Swing">
  • 65. <img sizes="(min-width: 30em) 100vw, (min-width: 50em) 50vw, 200px" srcset="swing-200.jpg 200w, swing-400.jpg 400w, swing-800.jpg 800w, swing-1600.jpg 1600w" src="swing-400.jpg" alt="Kettlebell Swing">
  • 66. <img sizes="(min-width: 30em) 100vw, (min-width: 50em) 50vw, 200px" srcset="swing-200.jpg 200w, swing-400.jpg 400w, swing-800.jpg 800w, swing-1600.jpg 1600w" src="swing-400.jpg" alt="Kettlebell Swing">
  • 67. …BUT IT’S ALL REALLY FOR BROWSER TO DECIDE.
  • 73.
  • 74.
  • 75.
  • 76.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 84.
  • 85. #1
  • 86.
  • 87. @media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device-width: 1024px) { /* Force table to not be like tables anymore */ table, thead, tbody, th, td, tr { display: block; } /* Hide table headers (but not display: none;, for accessibility) */ thead tr { position: absolute; top: -9999px; left: -9999px; } tr { border: 1px solid #ccc; } td { /* Behave like a "row" */ border: none; border-bottom: 1px solid #eee; position: relative; padding-left: 50%; } td:before { /* Now like a table header */ position: absolute; /* Top/left values mimic padding */ xtop: 6px; xleft: 6px; left: 50%; @media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device- width: 1024px)
  • 88. @media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device-width: 1024px) { /* Force table to not be like tables anymore */ table, thead, tbody, th, td, tr { display: block; } /* Hide table headers (but not display: none;, for accessibility) */ thead tr { position: absolute; top: -9999px; left: -9999px; } tr { border: 1px solid #ccc; } td { /* Behave like a "row" */ border: none; border-bottom: 1px solid #eee; position: relative; padding-left: 50%; } td:before { /* Now like a table header */ position: absolute; /* Top/left values mimic padding */ xtop: 6px; xleft: 6px; left: 50%; /* Force table to not be like tables anymore */ table, thead, tbody, th, td, tr { display: block; }
  • 89. @media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device-width: 1024px) { /* Force table to not be like tables anymore */ table, thead, tbody, th, td, tr { display: block; } /* Hide table headers (but not display: none;, for accessibility) */ thead tr { position: absolute; top: -9999px; left: -9999px; } tr { border: 1px solid #ccc; } td { /* Behave like a "row" */ border: none; border-bottom: 1px solid #eee; position: relative; padding-left: 50%; } td:before { /* Now like a table header */ position: absolute; /* Top/left values mimic padding */ xtop: 6px; xleft: 6px; left: 50%; /* Hide table headers (but not display: none;, for accessibility) */ thead tr { position: absolute; top: -9999px; left: -9999px; }
  • 90. @media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device-width: 1024px) { /* Force table to not be like tables anymore */ table, thead, tbody, th, td, tr { display: block; } /* Hide table headers (but not display: none;, for accessibility) */ thead tr { position: absolute; top: -9999px; left: -9999px; } tr { border: 1px solid #ccc; } td { /* Behave like a "row" */ border: none; border-bottom: 1px solid #eee; position: relative; padding-left: 50%; } td:before { /* Now like a table header */ position: absolute; /* Top/left values mimic padding */ xtop: 6px; xleft: 6px; left: 50%; tr { border: 1px solid #ccc; } td { /* Behave like a "row" */ border: none; border-bottom: 1px solid #eee; position: relative; padding-left: 50%; }
  • 91. @media only screen and (max-width: 760px), (min-device-width: 768px) and (max-device-width: 1024px) { /* Force table to not be like tables anymore */ table, thead, tbody, th, td, tr { display: block; } /* Hide table headers (but not display: none;, for accessibility) */ thead tr { position: absolute; top: -9999px; left: -9999px; } tr { border: 1px solid #ccc; } td { /* Behave like a "row" */ border: none; border-bottom: 1px solid #eee; position: relative; padding-left: 50%; } td:before { /* Now like a table header */ position: absolute; /* Top/left values mimic padding */ left: 50%; top: 50%; transform: translate(-70%, -50%); width: 50%; padding-right: 10px; white-space: nowrap; } td:before { /* Now like a table header */ position: absolute; /* Top/left values mimic padding */ left: 50%; top: 50%; transform: translate(-70%, -50%); width: 50%; padding-right: 10px; white-space: nowrap; }
  • 92. position: absolute; top: -9999px; left: -9999px; } tr { border: 1px solid #ccc; } td { /* Behave like a "row" */ border: none; border-bottom: 1px solid #eee; position: relative; padding-left: 50%; } td:before { /* Now like a table header */ position: absolute; /* Top/left values mimic padding */ left: 50%; top: 50%; transform: translate(-70%, -50%); width: 50%; padding-right: 10px; white-space: nowrap; } /* Label the data */ td:nth-of-type(1):before { content: "Film"; } td:nth-of-type(2):before { content: "Release Date"; } td:nth-of-type(3):before { content: "Director"; } td:nth-of-type(4):before { content: "Screenwriter(s)"; } td:nth-of-type(5):before { content: "Producer"; } td:nth-of-type(6):before { content: "Distributor"; } td:nth-of-type(7):before { content: "Status"; } } /* Label the data */ td:nth-of-type(1):before { content: "Film"; } td:nth-of-type(2):before { content: "Release Date"; } td:nth-of-type(3):before { content: "Director"; } td:nth-of-type(4):before { content: “Screenwriter(s)";} td:nth-of-type(5):before { content: "Producer"; } td:nth-of-type(6):before { content: "Distributor"; } td:nth-of-type(7):before { content: "Status"; } }
  • 93. #2
  • 94.
  • 95.
  • 96. /* Attach the Table CSS and Javascript */ <link rel="stylesheet" href="responsive-tables.css"> <script src="stylesheet" href="responsive- tables.js"></script>
  • 97. /* Put the responsive class on the table */ <table class="responsive"> <tr> …
  • 99. #1
  • 100.
  • 101.
  • 102.
  • 103. .nav ul { display: none; list-style: none; padding: 0px; margin: 0px; font-weight: bold; text-align: center; } .nav ul li { display: inline-block; text-align: left; } .nav ul li a { display: block; padding: 15px 10px; text-decoration: none; color: #444; } .nav ul li a:hover { background-color: #ccc; } .anchor-link { display: inline-block; text-align: center; padding: 10px 15px; color: #fff; background-color: #0084B4; text-decoration: none; margin: 3px; float: right; } .example-footer { font-size: 1.1em; .nav ul { display: none; list-style: none; padding: 0px; margin: 0px; font-weight: bold; text-align: center; } .nav ul li { display: inline-block; text-align: left; } .nav ul li a { display: block; padding: 15px 10px; text-decoration: none; color: #444; } .nav ul li a:hover { background-color: #ccc; }
  • 104. .nav ul { display: none; list-style: none; padding: 0px; margin: 0px; font-weight: bold; text-align: center; } .nav ul li { display: inline-block; text-align: left; } .nav ul li a { display: block; padding: 15px 10px; text-decoration: none; color: #444; } .nav ul li a:hover { background-color: #ccc; } .anchor-link { display: inline-block; text-align: center; padding: 10px 15px; color: #fff; background-color: #0084B4; text-decoration: none; margin: 3px; float: right; } .example-footer { .anchor-link { display: inline-block; text-align: center; padding: 10px 15px; color: #fff; background-color: #0084B4; text-decoration: none; margin: 3px; float: right; }
  • 105. margin: 3px; float: right; } .example-footer { font-size: 1.1em; } #mobile-nav { display: block; } #mobile-nav ul { list-style: none; margin: 0px; padding: 0px; } #mobile-nav ul li { list-style: none; text-align: center; } #mobile-nav ul li a { display: block; padding: 20px 10px; border-bottom: 1px solid #ccc; text-decoration: none; } #mobile-nav ul li a:hover { background-color: #ccc; color: #fff; } @media all and (min-width:48em){ .nav ul { display: block; } .anchor-link { display: none; } #mobile-nav { display: none; } } @media all and (min-width: 48em){ .nav ul { display: block; } .anchor-link { display: none; } #mobile-nav { display: none; } }
  • 106.
  • 107.
  • 108. #2
  • 109.
  • 110.
  • 111. .nav ul li { display: inline-block; } .nav ul li a { display: block; padding: 10px 20px; text-decoration: none; color: #444; } .nav ul li a:hover { background-color: #888; color: #fff; } @media (max-width:48.000em){ .example-header .container { width: 100%; } .nav ul { width: 100%; font-weight: normal; } .nav ul li { width: 50%; float: left; } .nav ul li:nth-of-type(odd) a { border-right: 1px solid #ccc; } .nav ul li a { padding: 8px 0px; border-bottom: 1px solid #ccc; display: block; } } @media (max-width:48.000em){ .example-header .container { width: 100%; } .nav ul { width: 100%; font-weight: normal; } .nav ul li { width: 50%; float: left; } .nav ul li:nth-of-type(odd) a { border-right: 1px solid #ccc; } .nav ul li a { padding: 8px 0px; border-bottom: 1px solid #ccc; display: block; } }
  • 112. .nav { width: 100%; } .nav ul { list-style: none; padding: 0px; margin: 0px; font-weight: bold; text-align: center; } .nav ul li { display: inline-block; } .nav ul li a { display: block; padding: 10px 20px; text-decoration: none; color: #444; } .nav ul li a:hover { background-color: #888; color: #fff; } @media (max-width:48.000em){ .example-header .container { width: 100%; } .nav ul { width: 100%; font-weight: normal; } .nav ul li { width: 50%; .nav { width: 100%; } .nav ul { list-style: none; padding: 0px; margin: 0px; font-weight: bold; text-align: center; } .nav ul li { display: inline-block; } .nav ul li a { display: block; padding: 10px 20px; text-decoration: none; color: #444; } .nav ul li a:hover { background-color: #888; color: #fff; }
  • 113.
  • 114. #3
  • 115.
  • 116.
  • 117.
  • 119. /* styles for desktop */ .tinynav { display: none } /* styles for mobile */ @media screen and (max-width: 600px) { .tinynav { display: block; margin: 1em auto; } #nav { display: none; } }
  • 121.
  • 122.
  • 123.
  • 124. .anchor-link { display: none; text-align: right; padding: 0 1em 0; text-align: center; padding: 10px 15px; color: #fff; background-color: #0084B4; text-decoration: none; margin: 3px; float: right; } #mobile-nav { display:none; }
  • 125. @media (max-width:48.000em){ ul.simple-toggle { display: none; } .anchor-link, #mobile-nav { display: block; } ul.open { background-color: #F4F4F4; box-shadow: 2px 2px 3px #444444; display: block; list-style: none outside none; margin: 0; padding: 0; position: absolute; right: 5px; top: 100%; width: 70%; z-index: 500;
  • 126. $(document).ready(function() { $('#menu-toggle').click(function () { $('#menu').toggleClass('open'); e.preventDefault(); }); }); http://codepen.io/teleject/pen/ONXLgR
  • 127.
  • 128.
  • 129.
  • 130.
  • 131.
  • 132.
  • 133. GO RETROFITTING ➤ Keep the same design ➤ Same UI, happy current visitors and members ➤ Saves money ➤ Saves time ➤ Plan on full RWD experience when the time and budget works for you. ➤ Until then…
  • 135. Beyond the web, the internet of things and voice
  • 136. FIND ME AT ➤ TWITTER @teleject ➤ EMAIL schmitt@christopher.org ➤ WEB http://christopher.org ➤ Hosting virtual Responsive Web Design Summit March 29-31 ➤ http://RWDSummit.com/