zoukankan      html  css  js  c++  java
  • 移动端屏幕自适应布局

    1、技术点

    移动端自适应采用百分比布局比较适合。需要说明一点的是:height的百分比是以父元素的宽度计算的,由于移动端父元素宽度有时没有给定值(如父元素宽度为100%),此时子元素的height就为0。

    因此子元素的高度值使用padding-top或者padding-bottom撑起。

    同时height的高度设置为0,防止font-size或line-height等属性影响到height。

    2、示例

    示例为展示图片,每行展示3个图片。每列图片宽度33%,图片间距为0.5%。

    <!DOCTYPE html>
    <html lang="zh-CN">
    
        <head>
            <meta charset="utf-8">
            <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0">
            <meta name="author" content="Tencent-TGideas" />
            <meta name="Copyright" content="Tencent" />
            <title>实例-图片列表</title>
            <style>
                * {
                    margin: 0;
                    padding: 0;
                }
                
                ol,
                ul {
                    list-style: none;
                }
                
                html,
                body {
                    position: relative;
                    width: 100%;
                }
                
                h1 {
                    font-size: 14px;
                    text-align: center;
                    line-height: 70px;
                }
                
                .lists {
                    width: 100%;
                }
                
                .lists li {
                    position: relative;
                    float: left;
                    width: 33%;
                    /*高度设置为0*/
                    height: 0;
                    /*padding-bottom设置为33% 以撑起高度*/
                    padding: 0 0 33%;
                    margin-top: .5%
                }
                
                .lists li:nth-child(3n-1) {
                    /*图片间距*/
                    margin: .5% .5% 0;
                }
                
                .lists li a,
                .lists li img {
                    width: 100%;
                    height: 100%;
                }
                
                .lists li a {
                    position: absolute;
                    top: 0;
                    left: 0;
                }
            </style>
        </head>
    
        <body>
            <h1>图片列表</h1>
            <ul class="lists">
                <li>
                    <a href="javascript:alert('图片');"><img src="img/sqbg-icon.png" alt="图片"></a>
                </li>
                <li>
                    <a href="javascript:alert('图片');"><img src="img/sqbg-icon.png" alt="图片"></a>
                </li>
                <li>
                    <a href="javascript:alert('图片');"><img src="img/sqbg-icon.png" alt="图片"></a>
                </li>
                <li>
                    <a href="javascript:alert('图片');"><img src="img/sqbg-icon.png" alt="图片"></a>
                </li>
                <li>
                    <a href="javascript:alert('图片');"><img src="img/sqbg-icon.png" alt="图片"></a>
                </li>
                <li>
                    <a href="javascript:alert('图片');"><img src="img/sqbg-icon.png" alt="图片"></a>
                </li>
                <li>
                    <a href="javascript:alert('图片');"><img src="img/sqbg-icon.png" alt="图片"></a>
                </li>
                <li>
                    <a href="javascript:alert('图片');"><img src="img/sqbg-icon.png" alt="图片"></a>
                </li>
            </ul>
        </body>
    
    </html>

    效果:

  • 相关阅读:
    【NOIP2018】游记
    题解 P1441 【砝码称重】
    题解 P3128 【[USACO15DEC]最大流Max Flow】
    题解 P1949 【聪明的打字员_NOI导刊2011提高(10)】
    题解 P1966 【火柴排队】
    题解 P1895 【数字序列】
    topcoder做题
    1149E
    hdu 6589
    hdu 6579
  • 原文地址:https://www.cnblogs.com/mengfangui/p/7814821.html
Copyright © 2011-2022 走看看