请老师检查一下

来源:3-4 自由编程

xiao白做大事

2021-03-17 17:46:14

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <title>3-4自由编程</title>

    <link rel="stylesheet" href="css/base.css">

    <link rel="stylesheet" href="css/index.css">

    <script src="js/flexible.js" type="module"></script>

</head>

<body>

    <header class="header-container">

        <div class="logo-container">

            <div class="logo">

                <img src="img/logo.png" alt="">

            </div>

        </div>

        <div class="btn-container">

            <button type="button" class="btn">下载APP</button>

        </div>

    </header>

</body>

</html>


base.css

* {

    box-sizingborder-box;

    padding0;

    margin0;

}


body {

    font-size12px;

    color#5d655b;

}


a {

    font-size12px;

    color#686868;

    text-decorationnone;

}


buttoninput {

    font-size12px;

    bordernone;

    backgroundnone;

    outlinenone;

}

[data-dpr="2"body,

[data-dpr="2"a,

[data-dpr="2"input,

[data-dpr="2"button {

    font-size24px;

}

[data-dpr="3"body,

[data-dpr="3"a,

[data-dpr="3"input,

[data-dpr="3"button {

    font-size36px;

}


li {

    list-stylenone;

}


img {

    vertical-aligntop;

    bordernone;

    height100%;

}


index.css

/* --布局 start-- */

html,body {

    width100%;

    height100%;

}

/* header */

.header-container {

    height2.5rem;

    displayflex;

    background#ccc;

}

.logo-container {

    flex:2;

}

.btn-container {

    flex:1;

    displayflex;

    align-itemscenter;

    padding-right.75rem;

}

.logo-container,

.btn-container {

    height100%;

}

/* --布局 end  -- */


/* --组件 start-- */

/* logo */

.logo {

    height100%;

    padding-left1.25rem;

}


/* button */

.btn {

    height1.75rem;

    background-colorpink;

    padding.5rem;

    border-radius1.125rem;

}


/* button */




/* --组件 end  -- */


/* --内容 start-- */



/* --内容 end  -- */

.js


'use strict';


var docEl = document.documentElement,

viewportEl = document.querySelector('meta[name="viewport"]'),

dpr = window.devicePixelRatio || 1,

maxWidth = 540,

minWidth = 320;


dpr = dpr >= 3 ? 3 : (dpr >= 2 ? 2 : 1);


docEl.setAttribute('data-dpr'dpr);

docEl.setAttribute('max-width'maxWidth);

docEl.setAttribute('min-width'minWidth);


var scale = 1 / dpr,

content = `width=device-width, initial-scale=${scale}, maximum-scale=${scale},minimum-scale=${scale}, user-scalable=no`;


if (viewportEl) {

    viewportEl.setAttribute('content'content);

else {

    viewportEl = document.createElement('meta');

    viewportEl.setAttribute('name''viewport');

    viewportEl.setAttribute('content'content);

    document.head.appendChild(viewportEl);

}


setRemUnit();


window.addEventListener('resize'setRemUnit);


function setRemUnit() {

    var ratio = 18.75;

    var viewWidth = docEl.getBoundingClientRect().width || window.innerWidth;


    if (maxWidth && (viewWidth / dpr > maxWidth)) {

        viewWidth = maxWidth * dpr;

    } else if (minWidth && (viewWidth / dpr < minWidth)) {

        viewWidth = minWidth * dpr;

    }


    docEl.style.fontSize = viewWidth / ratio + 'px';

}



写回答

1回答

好帮手慕久久

2021-03-17

同学你好,代码可做如下优化:

按钮居右显示,效果会更好,如下:

http://img.mukewang.com/climg/6051d55909a59bd205030128.jpg

http://img.mukewang.com/climg/6051d54e0949862a07180263.jpg

祝学习愉快!

0

0 学习 · 15276 问题

查看课程