移动端流式布局
2023-02-19 12:20:11 时间
1. meta 视口标签
<meta name="viewport" content="width=device-width, user-scalable = no, initial-scale=1.0, maximum-scale = 1.0, minimum-scale = 1.0">
width=device-width //设置页面宽度等于设备物理宽度
user-scalable = no // 用户是否可以缩放 ,可以是yes或no, 1或0
initial-scale=1.0, maximum-scale = 1.0, minimum-scale = 1.0 //依次是初始缩放比、最大缩放比、最小缩放比
2. 二倍图
当设备像素比很大时,图片会被放大,而放大会让图片看起来模糊。为此,我们可以使用二倍图的方式来提高图片的清晰度。
原理: Retina(视网膜屏幕)是一种显示技术 可以将把更多的物理像素点压缩至一块屏幕里,从而达到更高的分辨率 并提高屏幕显示的细腻程度。
对于一张 50px * 50px 的图片,在手机 Retina 屏中打开 按照原本的物理像素比会放大倍速 这样会造成图片模糊 通过使用二倍图,提高图片质量 解决在高清设备中的模糊问题。 示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width">
<title>Myself</title>
<style>
img:nth-child(2) {
width: 50px;
/*移动设备中的图片会被放大, 所以先将二倍图压缩成原图大小,从而可以提高清晰度*/
height: 50px;
}
</style>
</head>
<body>
<img src="images/apple50.jpg" alt="">
</body>
</html>
效果图:
3. 流式布局
流式布局是一种等比例缩放布局方式,在 CSS 代码中使用百分比来设置宽度,也称百分比自适应的布局。 流式布局实现方法是将 CSS 固定像素宽度换算为百分比宽度。换算公式如下: 目标元素宽度/父盒子宽度=百分数宽度 示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, user-scalable = no, initial-scale=1.0">
<title>Myself</title>
<style>
* {
margin: 0;
padding: 0;
}
section {
width: 100%;
/* max-width: 980px;
min-width: 600px; */ /*根据需要还可以设置max-width, min-width */
margin: 0 auto;
}
section div {
float: left;
width: 50%;
height: 400px;
}
section div:nth-child(1) {
background-color: pink;
}
section div:nth-child(2) {
background-color: purple;
}
</style>
</head>
<body>
<section>
<div></div>
<div></div>
</section>
</body>
</html>
效果图:
PC端
移动端
4. 特殊样式
示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, user-scalable = no, initial-scale=1.0">
<title>Myself</title>
<style>
</style>
</head>
<body>
<a href="#">Test</a>
<input type="button" value="按钮">
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, user-scalable = no, initial-scale=1.0">
<title>Myself</title>
<style>
a {
-webkit-tap-highlight-color: transparent;
/*移动端点击链接会高亮, 设置为透明色*/
}
input {
-webkit-appearance: none;
/*消除默认样式*/
}
</style>
</head>
<body>
<a href="#">Test</a>
<input type="button" value="按钮">
</body>
</html>
相关文章
- 《HelloGitHub》第 13 期
- 《HelloGitHub》第 12 期
- [linux]为阿里云ECS(CentOS7)配置IPv6地址
- 《HelloGitHub月刊》第 11 期
- [linux]孤儿进程与僵尸进程
- 《HelloGitHub月刊》第 10 期
- [linux]ngrep命令、常见用法
- [linux]压缩、解压命令
- [linux]ubuntu apt-get安装软件失败
- 《HelloGitHub月刊》第 09 期
- [linux]ubuntu14.04通过apt-get安装软件失败
- [linux]挂载smb
- 《HelloGitHub月刊》第 08 期
- 《HelloGitHub月刊》第 07 期
- [linux]如何为Virtualbox虚拟硬盘扩容(转载)
- 《HelloGitHub月刊》第 06 期
- [linux]chown和chmod命令
- [linux]ssh(转载)
- 《HelloGitHub》之GitHub Bot
- 《HelloGitHub月刊》第 05 期