简单介绍
单位
在编写网页过程中,需要对元素(标签)进行宽高、颜色、字体等的设置,这些需要使用单位。
在css中,设置字体和宽高使用的单位可以一致,例如:px
/em
/rem
/...
rem来源
rem是CSS3中的单位
和px的关系
px
是使用最多的单位。
em和rem可以和px单位进行换算,就如克和千克
之间可以换算一样
具体换算规则,在下面详细说明。
建议
在做移动端项目时,建议使用
rem
作为单位
可以方便、快捷、容易的实现响应式效果
em详细说明
em参照父级元素大小
如果父元素font-size:20px;
,给子元素设置字体fint-size:1em
,子元素其实就是20px
的大小
示例:
-
设定 1em =20px
-
2em =40xp
-
2.5em =50px
-
0.5em 10px
em
合适的使用场景是:text-indent(首航缩进)/line-height(行高)
rem详细说明
rem参考的是html标签字体大小
rem和em不同点就是em参考各自父元素,如果父元素没有设置字体大小,则继续向上查找(父父元素),直至最后;
rem直接参照html标签字体大小,并且是所有使用rem单位的都是参照html标签
html{
foont-size:100px
}
.title{
width:5rem;/*500px*/
height:5rem;/*500px*/
font-size:.3rem;/*30px*/
}
在做响应式网址时,可以根据媒体查询去调节
html
标签的字体大小,实现共同调节其他标签大小的效果
使用媒体查询调节
html
字体大小,效果不够精细(大小是分段改变的),可以使用JavaScrupt动态就算html的font-size
`document.documentElement.style.fontSize = innerWidth/10+"px";
window.onresize =function(){
document.documentElement.style.fontSize = innerWidth /10+"px";
}`
(function(window){
var winW = document.documentElement.clientWidth || document.body.clientWidth;
document.documentElement.style.fontSize = winW / 10 + "px";
window.onresize = function(){
var winW = document.documentElement.clientWidth || document.body.clientWidth;
document.documentElement.style.fontSize = winW / 10 + "px";
}
})(window)
使用注意点
在rem使用过程中,要时刻注意字体最小12px
的问题
设置html的font-size属性时候,最好不要小于12px
如果设置了10px
,使用1rem
的时候,其实就是12px,因为最小12px
网友评论