SlideShare une entreprise Scribd logo
1  sur  88
DNN for Mobile
An 1-hour remake
Beatriz Oliveira
the mobile jungle
mobile devices
simon
1024 x 768
320 x 480
320 x 240
176 x 220
128 x 160
96 x 65
320 x 240 QVGA
360 x 480
248 x 480
320 x 480 HVGA
most common mobile screen sizes for recent devices
mobile OS / browsers
60%
19%
10%
2%
9%
iPhone (MacOS)
Android
Blackberry (RIM)
Windows Mobile
Others
Operating system share of mobile web by end 2009 (source Quantcast)
you can’t eat (support) everything
you don’t need to support
everything
strategy
Do nothing
Mobile-friendly
design
Mobile-specific
design
Multi-serving
content
target mobile
browsers
specific css for mobile
(media types)
targeting mobile browsers
Tip #1
<link rel="stylesheet"
href="http://domain.tld/screen.css" type="text/css"
media="Screen" />
<link rel="stylesheet"
href="http://domain.tld/handheld.css"
type="text/css" media="handheld" />
@media rule
targeting mobile browsers
Tip #2
@media screen {
/* rules for computer screens */
}
@media handheld {
/* rules for handheld devices */
}
Add to screen.css
Add to handheld.css
CSS Behavior
PC Browsers
Handheld.css
OpenWave, Nokia lite-web, Netfront, Motorola
Handheld.css + screen.css
Palm’s Blazer, Nokia S40 (before 6th ed)
Screen.css
iPhone’s Safari, Android, Opera Mobile, Opera
Mini, BlackBerry, WebOS
Symbian S60, Internet Explorer
Screen.cs
s
✔
✔
✔
Handheld.css
✔
✔
media queries
targeting mobile browsers
Tip #3
<link rel="stylesheet" href="handheld.css"
media="only screen and (max-device-width:480px)"/>
@import url(handheld.css) only screen and (max-device-
width:480px);
@media only screen and (max-device-width:480px) {...}
skin.css
screen.css handheld.css
@import url("screen.css");
@import url("handheld.css") handheld, only screen and (max-device-width:480px);
@import url(”antiscreen.css") handheld, only screen and (max-device-width:480px);
skin.css
screen.css handheld.css
@import url("screen.css”)
antiscreen.cs
s
@import url("handheld.css") handheld, only screen and (max-device-width:480px);
CSS Behavior
PC Browsers
Handheld.css
OpenWave, Nokia lite-web, Netfront, Motorola
Handheld.css + screen.css
Palm’s Blazer, Nokia S40 (before 6th ed)
Screen.css w/ media queries
iPhone’s Safari, Android, Opera Mobile, Opera
Mini, BlackBerry, WebOS
Screen.css no media queries
Symbian S60, Internet Explorer
Screen.cs
s
✔
✔
✔
✔
Handheld.css
✔
✔
✔
mobile styles
basic mobile styles
mobile styles
Tip #1
html, body {
background: #fff;
color: #000;
margin: 0;
padding: 0;
}
html, body {
background: #fff;
color: #000;
margin: 0;
padding: 0;
font: 12px/15px sans-serif;
}
Do not rely on support of font related styling
no width content
mobile styles
Tip #2
* {width: auto;}
setting the viewport
mobile styles
Tip #3
Device
Screen Document
Viewport
<script language="javascript" type="text/javascript" >
var script = document.createElement("meta");
script.name = "viewport";
script.content = "width=device-width";
document.getElementsByTagName("head").item(0).appendChild(scr
ipt);
</script>
In DNN, add to default.ascx
<meta name=”viewport” content=“width=device-width”/>
Add to <head> section
careful with floats
mobile styles
Tip #3
* {float: none;}
keep it simple
mobile styles
Tip #4
 What are mobile visitors looking for?
 What information do they want/need?
 Do mobile visitors have time/interest in
all of my tedious sidebar content?
 With a barebones stylesheet, which
elements are clearly superfluous?
 Which navigational elements are
absolutely necessary? Which are
redundant?
 Are there entire regions of my page
that would be better off not displayed?
display only the
essential
Header
Main Navigation
Content
Footer
.leftpane, .rightpane {
display: none;
}
top navigation (vertical)
mobile styles
Tip #5
.mi, .mi .txt {display:block !important; text-align:left;
margin:0 !important;}
control image width
mobile styles
Tip #6
#content img {max-width: 250px;}
or
img {max-width: 250px;}
slim headings
mobile styles
Tip #7
h1, h2, h3, h4, h5, h6 {font-weight: normal;}
links
mobile styles
Tip #8
a:link, a:visited {
text-decoration: underline;
color: #0000CC;
}
a:hover, a:active {
text-decoration: underline;
color: #660066;
}
Highlight links
<a href=“tel:+1999999999“>Call us!</a>
Use the tel: de facto standard
Avoid target=_blank
forms
mobile styles
Tip #9
✔ Minimum input
✔ Do not use tables for layout
✔ Use definition lists (dl, dt, dd)
Other do’s and don’ts
mobile styles
Tip #10
✔ keep URIs of site entry points short
www.example.org/example.html accept example.org/example
✔ careful with color contrasts
✔ use (minimum) web standards
XHTML 1.0 / HTML 4.01 / XHTML-MP, CSS 2.1, DOM 1, ECMAScript 3
✔ always specify a doctype
✔ use standard media types
Static: JPEG, GIF, PNG / Dynamic: 3GP, AVI, WMV, MP4
× frames
× tables for layout
× nested tables
× image maps
× graphics for spacing
× horizontal scrolling
× do not rely on plug-ins, DHTML
behaviors, embedded objects or
script
W3C Best Practices
http://www.w3.org/TR/mobile-
bp/summary
put it all together
html, body {background-color:#fff; color:#000; margin:0;
padding:0; font:15px/120% sans-serif;}
* {width:auto;}
* {float:none;}
.RightPane, .LeftPane {display:none;}
.mi, .mi .txt {display:block; height:auto; text-align:left;
margin:0;}
#Panes img, #Footer img {max-width:250px;}
h1, h2, h3, h4, h5, h6 {font-weight:normal;}
a:link, a:visited {text-decoration:underline; color:#0000CC;}
a:hover, a:active {text-decoration:underline ;color:#660066;}
How to target devices that read screen, but do
not support media queries?
javascript
server-side UA
detection
MobileCSSInject
>90%
testing
use emulators
testing
Tip #1
• iPhone simulator
http://developer.apple.com/iPhone/program/
• Android emulator
http://code.google.com/android/reference/emulator.html
• BlackBerry simulator
http://www.blackberry.com/developers/downloads/simulators/index.shtml
• Windows Phone 7
http://create.msdn.com/
• Opera Mini simulator
http://www.opera.com/mobile/demo/
• Nokia Qt SDK (Symbian)
http://www.forum.nokia.com/info/sw.nokia.com/id/e920da1a-5b18-42df-82c3-
907413e525fb/Nokia_Qt_SDK.html
use real devices when
possible
testing
Tip #2
5 Steps Know your users
Define a strategy
Target selected devices
Styles for mobile
Test
books
Contacts www.bind.pt
Twitter – bindskins
beatrizoliveira@bind.pt
http://dnnblueprint.codeplex.com
questions?

Contenu connexe

Similaire à Dn nfor mobile_download_en

html5 & phonegap
html5 & phonegaphtml5 & phonegap
html5 & phonegapCaesar Chi
 
Designing for mobile
Designing for mobileDesigning for mobile
Designing for mobileDee Sadler
 
An Introduction to Responsive Design
An Introduction to Responsive DesignAn Introduction to Responsive Design
An Introduction to Responsive DesignValtech UK
 
Philly ete-2011
Philly ete-2011Philly ete-2011
Philly ete-2011davyjones
 
Responsive Web Design in iMIS (NiUG Austin 2015)
Responsive Web Design in iMIS (NiUG Austin 2015)Responsive Web Design in iMIS (NiUG Austin 2015)
Responsive Web Design in iMIS (NiUG Austin 2015)Andrea Robertson
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web DesignTung Dang
 
Optimizing content for the "mobile web"
Optimizing content for the "mobile web"Optimizing content for the "mobile web"
Optimizing content for the "mobile web"Chris Mills
 
Responsive Web Design (HeadStart TechTalks)
Responsive Web Design (HeadStart TechTalks)Responsive Web Design (HeadStart TechTalks)
Responsive Web Design (HeadStart TechTalks)Tirthesh Ganatra
 
Html 5 mobile - nitty gritty
Html 5 mobile - nitty grittyHtml 5 mobile - nitty gritty
Html 5 mobile - nitty grittyMario Noble
 
Supporting multi screen in android
Supporting multi screen in androidSupporting multi screen in android
Supporting multi screen in androidrffffffff007
 
Optimizing Sites for Mobile Devices
Optimizing Sites for Mobile DevicesOptimizing Sites for Mobile Devices
Optimizing Sites for Mobile Devicesjameswillweb
 
Mobile Your Joomla Site
Mobile Your Joomla SiteMobile Your Joomla Site
Mobile Your Joomla SiteKyle Ledbetter
 
East of Toronto .NET Usergroup - Put the 5 in HTML
East of Toronto .NET Usergroup - Put the 5 in HTMLEast of Toronto .NET Usergroup - Put the 5 in HTML
East of Toronto .NET Usergroup - Put the 5 in HTMLFrédéric Harper
 
Bruce Lawson Opera Indonesia
Bruce Lawson Opera IndonesiaBruce Lawson Opera Indonesia
Bruce Lawson Opera Indonesiabrucelawson
 
Content strategy for mobile
Content strategy for mobileContent strategy for mobile
Content strategy for mobileKarolina Szczur
 
Responsive UX - One size fits all @BigDesign conference #BigD12
Responsive UX - One size fits all   @BigDesign conference #BigD12Responsive UX - One size fits all   @BigDesign conference #BigD12
Responsive UX - One size fits all @BigDesign conference #BigD12touchtitans
 
Responsive ui
Responsive uiResponsive ui
Responsive uiRan Wahle
 
Cross Device UI Designing
Cross Device UI DesigningCross Device UI Designing
Cross Device UI DesigningDeepu S Nath
 

Similaire à Dn nfor mobile_download_en (20)

html5 & phonegap
html5 & phonegaphtml5 & phonegap
html5 & phonegap
 
Designing for mobile
Designing for mobileDesigning for mobile
Designing for mobile
 
An Introduction to Responsive Design
An Introduction to Responsive DesignAn Introduction to Responsive Design
An Introduction to Responsive Design
 
Philly ete-2011
Philly ete-2011Philly ete-2011
Philly ete-2011
 
Responsive Web Design in iMIS (NiUG Austin 2015)
Responsive Web Design in iMIS (NiUG Austin 2015)Responsive Web Design in iMIS (NiUG Austin 2015)
Responsive Web Design in iMIS (NiUG Austin 2015)
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
Optimizing content for the "mobile web"
Optimizing content for the "mobile web"Optimizing content for the "mobile web"
Optimizing content for the "mobile web"
 
Responsive Web Design (HeadStart TechTalks)
Responsive Web Design (HeadStart TechTalks)Responsive Web Design (HeadStart TechTalks)
Responsive Web Design (HeadStart TechTalks)
 
Html 5 mobile - nitty gritty
Html 5 mobile - nitty grittyHtml 5 mobile - nitty gritty
Html 5 mobile - nitty gritty
 
Supporting multi screen in android
Supporting multi screen in androidSupporting multi screen in android
Supporting multi screen in android
 
Optimizing Sites for Mobile Devices
Optimizing Sites for Mobile DevicesOptimizing Sites for Mobile Devices
Optimizing Sites for Mobile Devices
 
Mobile for web developers
Mobile for web developersMobile for web developers
Mobile for web developers
 
Mobile Your Joomla Site
Mobile Your Joomla SiteMobile Your Joomla Site
Mobile Your Joomla Site
 
Responsive design
Responsive designResponsive design
Responsive design
 
East of Toronto .NET Usergroup - Put the 5 in HTML
East of Toronto .NET Usergroup - Put the 5 in HTMLEast of Toronto .NET Usergroup - Put the 5 in HTML
East of Toronto .NET Usergroup - Put the 5 in HTML
 
Bruce Lawson Opera Indonesia
Bruce Lawson Opera IndonesiaBruce Lawson Opera Indonesia
Bruce Lawson Opera Indonesia
 
Content strategy for mobile
Content strategy for mobileContent strategy for mobile
Content strategy for mobile
 
Responsive UX - One size fits all @BigDesign conference #BigD12
Responsive UX - One size fits all   @BigDesign conference #BigD12Responsive UX - One size fits all   @BigDesign conference #BigD12
Responsive UX - One size fits all @BigDesign conference #BigD12
 
Responsive ui
Responsive uiResponsive ui
Responsive ui
 
Cross Device UI Designing
Cross Device UI DesigningCross Device UI Designing
Cross Device UI Designing
 

Dernier

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 

Dernier (20)

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 

Dn nfor mobile_download_en

Notes de l'éditeur

  1. 1st SmartPhone The IBM Simon Personal Communicator was an advanced cellular telephone for its time, created by a joint venture between IBM and BellSouth. Simon was first shown as a product concept in 1992[1] at COMDEX, in Las Vegas, Nevada. Launched in 1993[2] it combined the features of a mobile phone, a pager, a PDA, and a fax machine. After some delays it was sold by BellSouth in 1994 in 190 U.S. cities in 15 states and was originally priced at $899.[3] IBM Simon in charging station Besides a mobile phone, the major applications were a calendar, address book, world clock, calculator, note pad, e-mail, and games. It had no physical buttons to dial with. Instead customers used a touch-screen to select phone numbers with a finger or create facsimiles and memos with an optional stylus. Text was entered with either a unique on-screen "predictive" keyboard or QWERTY keyboard. The Simon had an optional PCMCIA memory card. The Simon smartphone appeared in the movie The Net.
  2. Nowadays nearly 15% of all mobile devices are already smartphones (this roughly represents a target population of nearly 600 million people). In the meantime an incredible variety of models and formats has been growing (and it doesn’t seem to stop!). There are literally hundreds of various device models sold around the world every year, which makes screen sizes far from being standard.
  3. The market as a cake to be eaten
  4. Market to be targeted
  5. List of 60 best practices for mobile
  6. Market we can now target