Table of Contents
Why write this
Preparation
The first step, cutting
The second step is to build the frame
Part 2, css structure
Second step, js structure
The third step, html page structure
Step 4. Generate sprite image
The fifth step, page and css encoding
Conclusion
Home Web Front-end HTML Tutorial Mobile webapp adaptive practice (css sprite production gadget practice) with pictures and texts_html/css_WEB-ITnose

Mobile webapp adaptive practice (css sprite production gadget practice) with pictures and texts_html/css_WEB-ITnose

Jun 24, 2016 am 11:43 AM

Why write this

I have written an article (link) about webapp adaptive screen before, but most people can’t understand it, so I will make a version with pictures and text. Although it is just a simple page, I also encountered some problems during the process of making it, which is a good thing!

The sample github address: https://github.com/iwangx/WebApp

Preparation

psd: This is the most important thing, used to measure the size, and Cutting, I don’t agree with leaving the work of cutting to UI. It’s better to cut it yourself. The resolution of the psd I made is 640px width. Of course, this psd is downloaded from the Internet

Css sprite production Tool: The latest version (v4.3) is a small program that can splice multiple pictures into one picture and generate code (independently developed by myself)

webstorm: front-end development tool

Markman: front-end Dimension and color measurement tool

photoshop: cutting tool

sass: css pre-compilation tool

The first step, cutting

I use photoshop The cut picture is as follows:

Of course it may not be clear because it is a white picture after all

The second step is to build the frame

The general structure is this, address: https://github.com/iwangx/WebApp

Part 2, css structure

css mainly uses sass for pre-compilation The tool has the following structure:

reset.scss file is mainly for resetting element styles

app.scss file is for single page style

The size.scss file contains variables for the mobile phone’s adaptive size of 1-400

Second step, js structure

The most important thing in js is the adaptive code, address: Mobile terminal adaptation and zepto are not introduced because it is just a simple example

The third step, html page structure

The page structure is as follows:

header: header title

nav: header navigation

controller: middle list

footer: bottom navigation

Step 4. Generate sprite image

Use sprite image generation tool: generate sprite image and generate code:

Copy the code to the app.scss directory in the css directory

Of course, the premise is to introduce size, a file containing aspect variables, otherwise $_* will not be recognized and an error will be reported

The fifth step, page and css encoding

css code:

@import "size";//所有图片变量@mixin sprite{background:url(../images/sprite.png) no-repeat ;background-size:$_138 $_163;}@mixin icon_right{height:$_59;width:$_59;background-position:0 -$_75 0 -$_5;}@mixin icon_left{height:$_59;width:$_59;background-position:0 0;}@mixin icon_tag{height:$_44;width:$_65;background-position:0 -$_1 0 -$_119;}@mixin icon_person{height:$_44;width:$_65;background-position:0 0 -$_66;}@mixin icon_book{height:$_44;width:$_65;background-position:0 -$_73 0 -$_71;}@mixin icon_more{height:$_44;width:$_65;background-position:0 -$_73 0 -$_119;}body{background: #fbfbfb}.sprite{@include sprite;}.header{position: fixed;background: #dd3131;height: $_90;line-height: $_90;;width: 100%;left: 0;top: 0;font-size: $_40;color: #fff;text-align: center;  button{position: absolute;top: $_16;border: $_2 solid #fff;border-radius: 50%;box-sizing: content-box}}.btn-left{@include icon_left;left: $_16;}.btn-right{@include icon_right;right: $_16;}.nav{display: -webkit-box;position: fixed;left: 0;top: $_90;color: #3d3d3d;font-size: $_30;width: 100%;border-bottom: $_1 solid #e7e5e6;  a{display: block;height: $_60;line-height: $_60;text-align: center;background: #fff;-webkit-box-flex: 1;border-right: $_1 solid #e7e5e6;box-sizing: border-box;}}.controller{padding: $_151 0 $_100 0;}.list{  li{border-bottom:$_1 solid #cfcfcf }  a{display: -webkit-box;padding: $_16;}  img{height: $_122;width: $_122;display: block}}.list-right{-webkit-box-flex: 1;padding-left: $_15;  h1{color: #555;font-size: $_24;}  p{color: #878787;font-size: $_18;margin-top: $_15;line-height: 1.5}}.footer{height: $_100;position: fixed;left: 0;bottom: 0;width: 100%;display: -webkit-box;background: #4a4a4a;text-align: center;  a{display: block;-webkit-box-flex: 1;box-sizing: border-box;padding-top: $_10;border-right: $_1 solid #fff;    &:last-child{border-right: none}  }  i{display: block;margin: 0 auto}  span{color: #fff;font-size: $_24;display: block;margin-top: $_5;}}.icon_book{@include icon_book}.icon_tag{@include icon_tag}.icon_person{@include icon_person}.icon_more{@include icon_more}
Copy after login

html code:

<!DOCTYPE html><html><head>    <meta charset="UTF-8">    <meta name="viewport" content="initial-scale=0.5,minimum-scale=0.5, maximum-scale=0.5,user-scalable=no,minimal-ui">    <meta name="author" content="wangxing">    <meta name="screen-orientation" content="portrait">    <meta name="x5-orientation" content="portrait">    <meta name="format-detection" content="telephone=no">    <title>app自适应</title>    <link rel="stylesheet" href="/css/reset.css">    <link rel="stylesheet" href="/css/app.css">    <script src="/js/lib/resize.js"></script></head><body>    <header class="header">        <button class="sprite btn-left"></button>        <span>远程酒业</span>        <button class="sprite btn-right"></button>    </header>    <nav class="nav">        <a href="javascript:;">资讯</a>        <a href="javascript:;">产品</a>        <a href="javascript:;">实战</a>        <a href="javascript:;">讨论</a>    </nav>    <section class="controller">        <ul class="list">            <li>                <a href="#">                    <img src="src" alt="图片">                    <div class="list-right">                        <h1>酒名字</h1>                        <p>提升白酒等传统酒类生产机械化水平成为行业未来研究工作的重点,从而促进酿酒装备与技术的快速发展……</p>                    </div>                </a>            </li>            <li>                <a href="#">                    <img src="src" alt="图片">                    <div class="list-right">                        <h1>酒名字</h1>                        <p>提升白酒等传统酒类生产机械化水平成为行业未来研究工作的重点,从而促进酿酒装备与技术的快速发展……</p>                    </div>                </a>            </li>            <li>                <a href="#">                    <img src="src" alt="图片">                    <div class="list-right">                        <h1>酒名字</h1>                        <p>提升白酒等传统酒类生产机械化水平成为行业未来研究工作的重点,从而促进酿酒装备与技术的快速发展……</p>                    </div>                </a>            </li>            <li>                <a href="#">                    <img src="src" alt="图片">                    <div class="list-right">                        <h1>酒名字</h1>                        <p>提升白酒等传统酒类生产机械化水平成为行业未来研究工作的重点,从而促进酿酒装备与技术的快速发展……</p>                    </div>                </a>            </li>        </ul>    </section>    <footer class="footer">        <a href="#">            <i class="sprite icon_book"></i>            <span>资讯</span>        </a>        <a href="#">            <i class="sprite icon_tag"></i>            <span>产品</span>        </a>        <a href="#">            <i class="sprite icon_person"></i>            <span>实战</span>        </a>        <a href="#">            <i class="sprite icon_more"></i>            <span>讨论</span>        </a>    </footer></body></html>
Copy after login

Where pictures are used, there are two main classes, one is the class of the sprite picture, and the other is the class he quoted. Combining the two

You can see that the sizes in the css code are all $_*, which is the measured size, including the font size is also

This constitutes our webapp

This is what it looks like on iphone5

This is what happens on iPhone 6

This is what it looks like on tablet

Conclusion

I hope this blog is useful to everyone Help, especially for newbies, I also hope you can give me more opinions

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Is HTML easy to learn for beginners? Is HTML easy to learn for beginners? Apr 07, 2025 am 12:11 AM

HTML is suitable for beginners because it is simple and easy to learn and can quickly see results. 1) The learning curve of HTML is smooth and easy to get started. 2) Just master the basic tags to start creating web pages. 3) High flexibility and can be used in combination with CSS and JavaScript. 4) Rich learning resources and modern tools support the learning process.

The Roles of HTML, CSS, and JavaScript: Core Responsibilities The Roles of HTML, CSS, and JavaScript: Core Responsibilities Apr 08, 2025 pm 07:05 PM

HTML defines the web structure, CSS is responsible for style and layout, and JavaScript gives dynamic interaction. The three perform their duties in web development and jointly build a colorful website.

Understanding HTML, CSS, and JavaScript: A Beginner's Guide Understanding HTML, CSS, and JavaScript: A Beginner's Guide Apr 12, 2025 am 12:02 AM

WebdevelopmentreliesonHTML,CSS,andJavaScript:1)HTMLstructurescontent,2)CSSstylesit,and3)JavaScriptaddsinteractivity,formingthebasisofmodernwebexperiences.

Gitee Pages static website deployment failed: How to troubleshoot and resolve single file 404 errors? Gitee Pages static website deployment failed: How to troubleshoot and resolve single file 404 errors? Apr 04, 2025 pm 11:54 PM

GiteePages static website deployment failed: 404 error troubleshooting and resolution when using Gitee...

What is an example of a starting tag in HTML? What is an example of a starting tag in HTML? Apr 06, 2025 am 12:04 AM

AnexampleofastartingtaginHTMLis,whichbeginsaparagraph.StartingtagsareessentialinHTMLastheyinitiateelements,definetheirtypes,andarecrucialforstructuringwebpagesandconstructingtheDOM.

How to use CSS3 and JavaScript to achieve the effect of scattering and enlarging the surrounding pictures after clicking? How to use CSS3 and JavaScript to achieve the effect of scattering and enlarging the surrounding pictures after clicking? Apr 05, 2025 am 06:15 AM

To achieve the effect of scattering and enlarging the surrounding images after clicking on the image, many web designs need to achieve an interactive effect: click on a certain image to make the surrounding...

How to implement adaptive layout of Y-axis position in web annotation? How to implement adaptive layout of Y-axis position in web annotation? Apr 04, 2025 pm 11:30 PM

The Y-axis position adaptive algorithm for web annotation function This article will explore how to implement annotation functions similar to Word documents, especially how to deal with the interval between annotations...

HTML, CSS, and JavaScript: Essential Tools for Web Developers HTML, CSS, and JavaScript: Essential Tools for Web Developers Apr 09, 2025 am 12:12 AM

HTML, CSS and JavaScript are the three pillars of web development. 1. HTML defines the web page structure and uses tags such as, etc. 2. CSS controls the web page style, using selectors and attributes such as color, font-size, etc. 3. JavaScript realizes dynamic effects and interaction, through event monitoring and DOM operations.

See all articles