3-4请老师检查下代码,谢谢

来源:3-4 自由编程

不厌_

2021-07-29 23:37:28

html相关代码:

<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Document</title>
<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

img {
vertical-align: top;
border: none;
width: 100%;
}

[data-dpr='2'] body,
[data-dpr='2'] a,
[data-dpr='2'] input {
font-size: 24px;
}

[data-dpr='3'] body,
[data-dpr='3'] a,
[data-dpr='3'] input {
font-size: 36px;
}

.header {
width: 100%;
height: 2.5rem;
background-color: rgb(189, 183, 184);
display: flex;
position: fixed;
top: 0;
left: 0;
z-index: 999;
}

.header-left,
.header-right {
display: flex;
height: 100%;
flex: 1;
align-items: center;
}

.header-left {
justify-content: flex-start;
}

.header-right {
justify-content: flex-end;
}

.header-left .logo {
padding-left: 1rem;
display: flex;
width: 7rem;
justify-content: center;
align-items: center;
cursor: pointer;
}

.header-right .download-btn {
margin-right: 1rem;
background-color: rgb(233, 193, 199);
width: 3.25rem;
height: 1.25rem;
color: black;
border-radius: .75rem;
display: flex;
justify-content: center;
align-items: center;
}
</style>
</head>

<body>
<header class="header">
<div class="header-left">
<div class="logo">
<img src="./img/logo.png" alt="">
</div>
</div>
<div class="header-right">
<div class="download-btn">
下载APP
</div>
</div>
</header>
<script src="./js/flexible.js"></script>
</body>

</html>

js相关代码:

(function () {
'use strict';

// dpr->scale = 1 / dpr
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;

// console.log(viewWidth);

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-07-30

同学你好,代码布局以及实现效果很棒。继续加油,祝学习愉快

0

0 学习 · 15276 问题

查看课程