Mobile Web Development

  • Castledine, E., Eftos, M., Wheeler, M. (2011) Build Mobile Websites and Apps for Smart Devices, SitePoint Pty. Ltd.

Download eBook PDF (PDF 8,457KB)
Download Source Code (ZIP 344KB)

Be guided through the process of designing and building for the mobile web from start to finish.

Build Mobile Websites and Apps for Smart Devices, as the name suggests, is all about designing for mobile devices. It’s about designing for the future. This book will guide you through the process of designing and building a mobile web application from scratch.

What will I learn?

  • Design effective mobile interfaces: Learn the fundamental rules of great mobile UI design.
  • Create responsive layouts that are smart layouts: Use HTML5 and CSS3 to build fast, responsive layouts that look great on all devices.
  • Capture that “native app” feel: Learn to use JavaScript to create a native app feel with transitions, touch and swipe events, animations, and more.
  • Get the most out of every device: Leverage the power of APIs to take advantage of built-in device functionality.
  • Tame the natives! Use PhoneGap to generate highly effective native apps for iOS, Android, BlackBerry, and other platforms – and sell it online.

Kyrnin, J. (2012) Sams Teach Yourself HTML5 Mobile Application Development in 24 Hours, Pearson Education, Inc.

Download eBook PDF (PDF 7,223KB)
Companion Web Site: Download code examples from: https://www.html5in24hours.com/books/the-book/code/
Companion Web Site: https://www.html5in24hours.com/books/the-book/

In just 24 sessions of one hour or less, learn how to build rich, robust mobile apps that run on smartphones, tablets, and other devices and interact with users in powerful new ways. Using this book’s straightforward, step-by-step approach, you’ll master leading-edge practical skills you can use whether you’re developing for the iPad/iPhone or Android. Discover how to quickly build new mobile apps and upgrade older apps, provide cutting-edge media content, leverage advanced features ranging from geolocation to the semantic web, and even simplify complex back-end development. Each lesson builds on what you’ve already learned, giving you a rock-solid foundation for real-world success!

Step-by-step instructions carefully walk you through the most common HTML5 mobile development tasks.

Quizzes and Exercises at the end of each chapter help you test your knowledge.

By the Way notes present interesting information related to the discussion.

Did you Know? tips offer advice or show you easier ways to perform tasks.

Watch Out! cautions alert you to possible problems and give you advice on how to avoid them.

Learn how to…

  • Work with the new HTML5 tags most valuable for mobile development
  • Get started fast with HTML5 features already supported by today’s browsers
  • Detect mobile devices and HTML5 support and upgrade sites to support them
  • Style and build more efficient, usable mobile pages
  • Use jQuery Mobile to quickly create mobile apps
  • Leverage HTML5’s breakthrough drawing and typography features
  • Efficiently integrate media content into your apps
  • Add meaning with HTML5 sectioning and semantic elements
  • Implement drag-and-drop more easily than ever
  • Build offline applications and other apps that use local storage
  • Detect and work with location data via the GeoLocation API
  • Use microformats and microdata to make web pages friendlier to computers
  • Add powerful back-end functionality with WebSockets, Web Workers, and File APIs
  • Improve user navigation with the History API

Table of Contents

Part I: Building Web Pages and Applications with the Open Web Standard

Hour 1: Improving Mobile Web Application Development with HTML5     1

  • Understanding How We Got to HTML5     1

Learning What’s Different with HTML5     3
Defining Web Applications     4
Using the Open Web Standard     4
Using HTML5 with iOS and Android Devices     6
Writing Mobile Websites     7
Summary      11
Q&A     12
Workshop     13

 

Hour 2: New HTML5 Tags and Attributes with Mobile Development     15
The New HTML5 Tags     15
The New HTML5 Attributes     24
Changes to HTML 4 Tags and Attributes     25
Changes to HTML Syntax in HTML5     27
Mobile Support of HTML5 Tags and Attributes     28
Benefits of HTML5 for Mobile Web Development     29
Summary     30
Q&A     30
Workshop     31

 

Hour 3: Styling Mobile Pages with CSS3     33
Quick Introduction to CSS     33
What CSS3 Adds to the Party      42
Using CSS3 on Mobile Devices     46
Summary     46
Q&A     46
Workshop     47

 

Hour 4: Detecting Mobile Devices and HTML5 Support     49
Choosing What HTML5 Elements to Use     50
Android and iOS Support for HTML5     50
Detecting HTML5 Functions     52
Degrading Gracefully     58
Using CSS3 Media Queries to Detect Mobile Browsers     60
Testing Your Applications     63
Summary     64
Q&A     64
Workshop     65

 

Hour 5: JavaScript and HTML5 Web Applications     67
What is JavaScript?     67
What is jQuery?     72
Using jQuery Mobile     79
Summary     82
Q&A     82
Workshop     83

 

Hour 6: Building a Mobile Web Application     85
Building a Site that Works on All Devices     85
Deciding on What Type of Application You Want     86
Building the Application in HTML     89
Using CSS to Make the HTML Look Good     91
Adding Mobile Meta Tags for More Effective HTML5 Pages     96
Optimizing Your Site for Mobile     99
Summary     102
Q&A     102
Workshop     103

 

Hour 7: Upgrading a Site to HTML5     105
Deciding When and How to Upgrade from HTML 4     105
HTML5 Features that Work Right Now     111
The State of HTML5 Browser Support     112
Adding HTML5 Features as Extras on Your Site     113
HTML5 Features that Turn Your Site into a Killer Mobile Application     115
Summary     116
Q&A     116
Workshop     118

 

Hour 8: Converting Web Apps to Mobile     119
Choosing a Web Editor     120
Testing Your Application     121
Evaluating Your Content     123
Changing the Visual Design for Mobile     124
Checking for HTML5 and CSS3     130
Supporting Multiple Devices     132
Evaluating Finished Apps on Other Devices     133
Getting an Application to Work on Older Browsers     134
Summary     138
Q&A     139
Workshop     139

 

Part II: Learning the HTML5 Essentials

 

Hour 9: Adding Meaning with HTML5 Sectioning and Semantic Elements     141
What Are Sectioning Elements?     141
Using the New Sectioning Elements     142
Marking Up HTML Semantically     154
Summary     159
Q&A     159
Workshop     160

 

Hour 10: Drawing with the HTML5 Canvas Element     163
Using the Canvas Element     163
Drawing Shapes on the <Canvas> Element     165
Writing Fonts and Text on the Canvas     177
Displaying Images     179
How Is Canvas Different from SVG or Flash     182
Summary     183
Q&A     184
Workshop     185

 

Hour 11: Fonts and Typography in HTML5     187
Defining the Elements of Typography     187
Using Proper Typographical Entities     196
Understanding Web Open Font Format (WOFF)     198
Summary     202
Q&A     202
Workshop     203

 

Hour 12: Audio and Video in HTML5     205
Why Use HTML5 for Audio and Video vs Flash     205
Choosing Video Formats for the Best Compatibility     207
Choosing Audio Codecs for the Widest Support     208
The New HTML5 Media Elements     210
Useful Attributes to Extend Your Media     212
Creating Fallback Options for Internet Explorer      216
Creating Custom Controls with API Methods     217
Summary     219
Q&A     220
Workshop     220

 

Hour 13: HTML5 Forms     223
New Usability Features in HTML5 Forms     223
HTML5 Input Types     228
Other New Form Elements     235
Form Validation     237
Summary     241
Q&A     242
Workshop     242

 

Hour 14: Editing Content and User Interaction with HTML5     245
The New contenteditable Attribute     245
The execCommand Method     247
Adding Spellcheck to Web Pages     251
Hiding Elements     252
Additional UI Components of HTML5     253
Browser Support of UI and Editing Features     255
Summary     257
Q&A     258
Workshop     258

 

Hour 15: Microformats and Microdata     261
Using Microformats     261
Using Microdata     267
Using RDFa     269
Deciding Which Format to Use     270
Mobile and Microformats     271
Summary      272
Q&A     273
Workshop     274

 

Hour 16: Working with HTML5 Drag-and-Drop Functionality     275
Implementing Drag and Drop     275
Drag-and-Drop Events     276
Drag-and-Drop Attributes     279
Helpful CSS Extensions     280
Building a Drag-and-Drop Interface     280
Using Drag and Drop on iOS     287
Summary     290
Q&A     290
Workshop     291

 

Hour 17: HTML5 Links     293
How Links Have Changed in HTML5    293
Link Types and Relationships     299
Using the New Link Types     300
Summary     306
Q&A     306
Workshop     307

 

Part III: HTML5 for Mobile and Web Applications

 

Hour 18: Web Application APIs and Datasets     309
Creating Web Applications     309
Datasets and data-* Attributes     318
Summary     320
Q&A     320
Workshop     321

 

Hour 19: WebSockets, Web Workers, and Files     323
Two-Way Communication with WebSockets     323
Running Scripts in the Background with Web Workers     326
Handling Client-Side Files with the File API     331
Summary     337
Q&A     338
Workshop     339

 

Hour 20: Offline Web Applications     341
Building Offline Apps and Converting Apps to Work Offline     341
The Cache Manifest     343
Using DOM Events and Properties for Offline Apps     347
Debugging the Application Cache     351
Summary     352
Q&A     352
Workshop     353

 

Hour 21: Web Storage in HTML5     355
What Is Web Storage?     356
Web SQL and Indexed DB     361
Summary     370
Q&A     371
Workshop     372

 

Hour 22: Controlling the Browser History with the History API     373
Why Control the Browser History?     373
History API Methods     375
Using the History API     375
Dangers and Annoyances of the History API     383
Summary     384
Q&A     385
Workshop     386

 

Hour 23: Adding Location Detection with Geolocation     387
What Is Geolocation?     387
Privacy and Geolocation     394
Creating a Mobile Geolocation Application     396
Summary     401
Q&A     401
Workshop     402

 

Hour 24: Converting HTML5 Apps to Native Apps     405
Comparing the Difference Between Native and HTML5 Apps     405
Converting to Native Apps     408
Creating Application Icons     414
Testing Your Applications     416
Selling Your App in the App Stores     418
Options Other Than Converting to Native Apps     419
Summary     419
Q&A     420
Workshop     421

 

Part IV: Appendixes

 

Appendix A: Answers to Quizzes     423
Hour 1, “Improving Mobile Web Application Development with HTML5”     423
Hour 2, “New HTML5 Tags and Attributes with Mobile Development”     423
Hour 3, “Styling Mobile Pages with CSS3”     424
Hour 4, “Detecting Mobile Devices and HTML5 Support”     424
Hour 5, “JavaScript and HTML5 Web Applications”     425
Hour 6, “Building a Mobile Web Application”     425
Hour 7, “Upgrading a Site to HTML5”     426
Hour 8, “Converting Web Apps to Mobile”     426
Hour 9, “Adding Meaning with HTML5 Sectioning and Semantic Elements”     427
Hour 10, “Drawing with the HTML5 Canvas Element”     427
Hour 11, “Fonts and Typography in HTML5”     428
Hour 12, “Audio and Video in HTML5”     428
Hour 13, “HTML5 Forms”     429
Hour 14, “Editing Content and User Interaction with HTML5”     429
Hour 15, “Microformats and Microdata”     430
Hour 16, “Working with HTML5 Drag-and-Drop Functionality”     430
Hour 17, “HTML5 Links”     430
Hour 18, “Web Application APIs and Datasets”     431
Hour 19, “WebSockets, Web Workers, and Files”     431
Hour 20, “Offline Web Applications”     432
Hour 21, “Web Storage in HTML5”     432
Hour 22, “Controlling the Browser History with the History API”     433
Hour 23, “Adding Location Detection with Geolocation”     434
Hour 24, “Converting HTML5 Apps to Native Apps”     434

 

Appendix B: HTML Elements and Attributes     437
HTML5 Elements     437
HTML5 Attributes     442

 

Appendix C: HTML5 and Mobile Application Resources     447
Books     447
Websites      448
This Book’s Website      448


Fling, B. (2009) Mobile Design and Development: Practical Techniques for Creating Mobile Sites and Web Apps, O’Reilly Media

Mobile devices outnumber desktop and laptop computers three to one worldwide, yet little information is available for designing and developing mobile applications. Mobile Design and Development fills that void with practical guidelines, standards, techniques, and best practices for building mobile products from start to finish. With this book, you’ll learn basic design and development principles for all mobile devices and platforms. You’ll also explore the more advanced capabilities of the mobile web, including markup, advanced styling techniques, and mobile Ajax.

If you’re a web designer, web developer, information architect, product manager, usability professional, content publisher, or an entrepreneur new to the mobile web, Mobile Design and Development provides you with the knowledge you need to work with this rapidly developing technology. Mobile Design and Development will help you:

  • Understand how the mobile ecosystem works, how it differs from other mediums, and how to design products for the mobile context
  • Learn the pros and cons of building native applications sold through operators or app stores versus mobile websites or web apps
  • Work with flows, prototypes, usability practices, and screen-size-independent visual designs
  • Use and test cross-platform mobile web standards for older devices, as well as devices that may be available in the future
  • Learn how to justify a mobile product by building it on a budget

Table of Contents

Preface; Who This Book Is For; How This Book Is Organized; Conventions Used in This Book; Using Code Examples; How to Contact Us; Safari® Books Online; Acknowledgments; Chapter 1: A Brief History of Mobile; 1.1 In the Beginning; 1.2 The Evolution of Devices; Chapter 2: The Mobile Ecosystem; 2.1 Operators; 2.2 Networks; 2.3 Devices; 2.4 Platforms; 2.5 Operating Systems; 2.6 Application Frameworks; 2.7 Applications; 2.8 Services; Chapter 3: Why Mobile?; 3.1 Size and Scope of the Mobile Market; 3.2 The Addressable Mobile Market; 3.3 Mobile As a Medium; 3.4 The Eighth Mass Medium: What’s Next?; 3.5 Ubiquity Starts with the Mobile Web; Chapter 4: Designing for Context; 4.1 Thinking in Context; 4.2 Taking the Next Steps; Chapter 5: Developing a Mobile Strategy; 5.1 New Rules; 5.2 Summary; Chapter 6: Types of Mobile Applications; 6.1 Mobile Application Medium Types; Chapter 7: Mobile Information Architecture; 7.1 What Is Information Architecture?; 7.2 Mobile Information Architecture; 7.3 The Design Myth; Chapter 8: Mobile Design; 8.1 Interpreting Design; 8.2 The Mobile Design Tent-Pole; 8.3 Designing for the Best Possible Experience; 8.4 The Elements of Mobile Design; 8.5 Mobile Design Tools; 8.6 Designing for the Right Device; 8.7 Designing for Different Screen Sizes; Chapter 9: Mobile Web Apps Versus Native Applications; 9.1 The Ubiquity Principle; 9.2 When to Make a Native Application; 9.3 When to Make a Mobile Web Application; Chapter 10: Mobile 2.0; 10.1 What Is Mobile 2.0?; Chapter 11: Mobile Web Development; 11.1 Web Standards; 11.2 Designing for Multiple Mobile Browsers; 11.3 Device Plans; 11.4 Markup; 11.5 CSS: Cascading Style Sheets; 11.6 JavaScript; Chapter 12: iPhone Web Apps; 12.1 Why WebKit?; 12.2 What Makes It a Mobile Web App?; 12.3 Markup; 12.4 CSS; 12.5 JavaScript; 12.6 Creating a Mobile Web App; 12.7 Web Apps As Native Apps; 12.8 PhoneGap; 12.9 Tools and Libraries; Chapter 13: Adapting to Devices; 13.1 Why Is Adaptation a “Necessity”?; 13.2 Strategy #1: Do Nothing; 13.3 Strategy #2: Progressive Enhancement; 13.4 Strategy #3: Device Targeting; 13.5 Strategy #4: Full Adaptation; 13.6 What Domain Do I Use?; 13.7 Taking the Next Step; Chapter 14: Making Money in Mobile; 14.1 Working with Operators; 14.2 Working with an App Store; 14.3 Add Advertising; 14.4 Invent a New Model; Chapter 15: Supporting Devices; 15.1 Having a Device Plan; 15.2 Device Testing; 15.3 Desktop Testing; 15.4 Usability Testing; Chapter 16: The Future of Mobile; 16.1 The Opportunity for Change; Colophon;|

  • Preface
  • Chapter 1: A Brief History of Mobile
  • Chapter 2: The Mobile Ecosystem
  • Chapter 3: Why Mobile?
  • Chapter 4: Designing for Context
  • Chapter 5: Developing a Mobile Strategy
  • Chapter 6: Types of Mobile Applications
  • Chapter 7: Mobile Information Architecture
  • Chapter 8: Mobile Design
  • Chapter 9: Mobile Web Apps Versus Native Applications
  • Chapter 10: Mobile 2.0
  • Chapter 11: Mobile Web Development
  • Chapter 12: iPhone Web Apps
  • Chapter 13: Adapting to Devices
  • Chapter 14: Making Money in Mobile
  • Chapter 15: Supporting Devices
  • Chapter 16: The Future of Mobile

 Wroblewski, L. (2011) Mobile First, A Book Apart

Download Source Code (ZIP 26,729KB)

Companion Web Site: http://www.lukew.com/resources/mobile_first.asp

Our industry’s long wait for the complete, strategic guide to mobile web design is finally over. Former Yahoo! design architect and co-creator of Bagcheck Luke Wroblewski knows more about mobile experience than the rest of us, and packs all he knows into this entertaining, to-the-point guidebook. Its data-driven strategies and battle tested techniques will make you a master of mobile—and improve your non-mobile design, too!

Contents

Part 1: Why Mobile First?

  1. Growth
  2. Constraints
  3. Capabilities

Part 2: How to go Mobile

  1. Organization (Read this chapter online)
  2. Actions
  3. Inputs
  4. Layout

Layon, K. (2012) Mobilizing Web Sites: Strategies for Mobile Web Implementation, Voices That Matter, PeachPit Press

Download eBook PDF (PDF 5,358KB)

Download Source Code – Site 1 – Responsive Design (ZIP 2,895KB)
Download Source Code – Site 2 – jQueryMobile (ZIP 3,013KB)
Download Source Code – Site 3 – PHP and Device Detection (ZIP 2,783KB)

Companion Web Site: http://www.mobilizingwebsites.net/

Everyone has been talking about the mobile web in recent years, and more of us are browsing the web on smartphones and similar devices than ever before. But most of what we are viewing has not yet been updated for mobile presentation. How can designers bring more of the web up to speed with the capabilities of today’s mobile devices?

In Mobilizing Web Sites: Develop and Design, author and designer Kristofer Layon addresses that elephant in the room –the many existing web sites that we manage on a day-to-day basis– and walks through techniques that web designers can use to make these legacy web sites better-suited for mobile viewing. By focusing on content strategy and the mobile UI experience, web designers can use HTML, CSS, and JavaScript to design mobile presentations of legacy, standards-based web sites. The techniques of gradual mobile improvement are all that a designer needs to help the existing web be more mobile.

 

  • An iterative approach to learning how to mobilize the web (without starting over)
  • How you can embrace responsive design incrementally
  • Mobilizing user experience design
  • Mobilizing layout
  • Mobilizing navigation
  • Mobilizing images
  • Mobilizing text
  • Mobilizing forms
  • Mobilizing social media
  • Mobilizing content strategy
  • Other methods: using jQuery Mobile
  • Other methods: using PHP and device detection

 

Table of Contents

1. The irony of the mobile web Today’s device capabilities, yesterday’s web sites
2. Big fingers and busy schedules The mobile user experience
3. What is all of this, anyway? How to inventory your existing site content
4. Excuse me but what are you? How media queries help content fit mobile devices
5. Lean and tall Making large-screen layouts adapt to small screens
6. Now you see it, now you don’t Analyzing and prioritizing content for mobile delivery
7. Buttons Coding, sizing, and styling the basic mobile UI element
8. Images Techniques for dealing with legacy images
9. Let’s polka Accordion menus can save bulky legacy site navigations
10. Tell it like it is Mobile presentation tips for legacy blogs
11. iPhone and iPod touch considerations If you really want to customize for iOS, there are techiques for that
12. Mobile JavaScript libraries Sencha Touch and jQuery Mobile


Moll, Cameron (2007) Mobile Web Design, Cameron Moll

Download eBook PDF (PDF 17,554KB)
Download Mobile Web Design presentation (PDF 7,808KB)

Companion Web Site: https://mobilewebbook.com/

Also: http://www.cameronmoll.com/archives/000398.html

A web standards approach for delivering content beyond the desktop

Much has been written about mobile devices. Plenty has been written about developing websites for the so-called “standards era” of the web. However, little has been written about the two colliding. This resource aims to fill that void.

  • Discover how to deliver web content to mobile devices (nearly 3 billion worldwide)
  • 100+ pages of practical advice, tips, & examples
  • More than 40 screens from actual devices
  • Written by one of the world’s leading web designers

If you’re in a position to develop for, manage, or give advice regarding your organizations foray into a web strategy for mobile devices, then this book is for you.