SlideShare uma empresa Scribd logo
1 de 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?

Mais conteúdo relacionado

Semelhante a Dn nfor mobile_download_en

Philly ete-2011
Philly ete-2011Philly ete-2011
Philly ete-2011
davyjones
 
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
Frédéric Harper
 
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
touchtitans
 

Semelhante a 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
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
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
 
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
 
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
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
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?
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
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
 
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...
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
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...
 

Dn nfor mobile_download_en

Notas do Editor

  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