1.rem基础
****em ****
<style>
div {
font-size: 12px;
}
p {
width: 10em;
height: 10em;
background-color: pink;
}
</style>
</head>
<body>
<div>
<p></p>
</div>
</body>
rem
html {
font-size: 14px;
}
div {
font-size: 12px;
}
p {
/* width: 10em;
height: 10em; */
width: 10rem;
height: 10rem;
background-color: pink;
}
</style>
</head>
<body>
<div>
<p></p>
</div>
</body>
rem的优点:可以通过修改html文字的大小来控制页面元素的大小
2.媒体查询(Media Query)
可以根据不同屏幕尺寸设置不同样式
语法规范
@media mediatype and|not|only(media feature){
CSS-Code;
-
mediatype查询类型
-
关键字
-
媒体特性
<style>
/* 屏幕尺寸<=800px 变为粉色*/
@media screen and (max-width: 800px) {
body {
background-color: pink;
}
}
/* 屏幕尺寸<=500px 变为紫色*/
@media screen and (max-width: 500px) {
body {
background-color: purple;
}
}
</style>
<style>
/* 屏幕小于540px时 背景颜色变为蓝色 */
@media screen and (max-width: 539px) {
body {
background-color: blue;
}
}
/* 540<=x<=969 背景变为绿色 */
/* @media screen and (min-width: 540px) and (max-width: 969px) { */
@media screen and (min-width: 540px) {
body {
background-color: green;
}
}
/* 屏幕大于等于970时 背景变为红色 */
@media screen and (min-width: 970px) {
body {
background-color: red;
}
}
</style>
<style>
@media screen and (min-width: 320px) {
html {
font-size: 50px;
}
}
@media screen and (min-width:640px) {
html {
font-size: 100px;
}
}
div {
height: 1rem;
background-color: pink;
color: #fff;
font-size: .5rem;
text-align: center;
line-height: 1rem;
}
</style>
</head>
<body>
<div class="top">大肘子</div>
</body>
rem实现元素动态变化⬆
3.less
1. less变量
css中一些颜色和数值经常使用
格式
@变量名:值;
less的编译
下载easy less插件,生成与less对应的css文件,引入html文件中。
2. less的嵌套
- 运算
rem适配方案
元素大小取值方法:
- 页面元素rem值=页面元素值(px)/(屏幕宽度/划分的份数)
- 屏幕宽度/划分的份数就是html中font-size的大小
- 或者:页面元素rem值=页面元素值(px)/font-size的大小
注意点:@import 导入是把一个样式文件导入另外一个样式文件
link 是把一个样式文件引入到html页面里面
rem+flexible.js
下载地址:https://github.com/amfe/lib-flexible
flex的盒子不用担心外边距合并