- 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?
- Growth
- Constraints
- Capabilities
Part 2: How to go Mobile
- Organization (Read this chapter online)
- Actions
- Inputs
- 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.