前端之CSS篇

html-css024

前端之CSS篇,第1张

px像素。绝对单位,像素px是相对于显示器屏幕分辨率而言的,是一个虚拟单位。是计算机系统的数字化图像长度单位,如果px要换算成物理长度,需要指定精度DPI。

2、em是相对长度单位,相对于当前对象内文本的字体尺寸。如当前对行内文本的字体尺寸未被人为设置,则相对浏览器的默认字体尺寸。它会继承父级元素的字体大小,因此并不是一个固定的值。

rem是CSS3新增的一个相对单位(root em,根em),使用rem为元素设定字体大小事,仍然是相对大小但相对的只是HTML根元素。

4、区别:IE无法调用那些使用px作为单位的字体大小,而em和rem可以缩放,rem相对的只是HTML根元素。这个单位可谓集相对大小和绝对大小的优点于一身,通过它既可以做到只修改根元素就成比例地调整所有字体大小,又可以避免字体大小逐层复合的连锁反应。目前,除了IE8及更早版本外,所有浏览器已支持rem。

1.定位

2.尺寸

3.浮动

4.最初的布局——table

5.两栏布局(浮动和定位)

6.三栏布局(flex,圣杯和双飞翼: https://www.jianshu.com/p/f9bcddb0e8b4 )

7.移动端的布局(媒体查询,flex弹性盒子( https://github.com/laizimo/zimo-article/issues/13 ),rem适配( http://www.cnblogs.com/lyzg/p/4877277.html ))

8.grid布局

摘自: https://segmentfault.com/a/1190000011358507

1.flex方式(适用于居中元素元素宽高未知),但是这种方式仅限于body里面只有一个子元素,如果body里面有多个div不行

2.绝对定位和负边距(适用于居中元素的宽高是固定的)

3.CSS3的transform属性(适用于居中元素元素宽高未知)

4.margin:auto

1.transform

transform属性是静态属性。它其实只是一个静态属性,需要配合transition和animation才能展现出动画效果。你可以把它看成是跟left、top等属性一样,只是一个静态样式而已。它可以让元素偏移、伸缩、变形、旋转等。

2.transition,它属性是一个简单的动画属性,非常简单非常容易用。可以说它是animation的简化版本,是给普通做简单网页特效用的。

3.Animation

https://www.jianshu.com/p/f9bcddb0e8b4

1、元素的margin的top、bottom及padding的top、bottom使用百分比作为单位时,其是相对父元素的宽度width的而不是我们想象的高度height其实出现这种现象,我们可以巧用margin/padding的百分比值实现高度自适应。当然该元素高度上的百分比是相对其父元素高度的百分比的,min-height及max-height也适用这条规律。

2、含有定位属性的元素,其top、bottom单位为百分比时,该百分比是相对于父元素的高度的。同理,left、right则是相对于父元素的宽度的。

3、边框宽度不允许使用百分比值。这点就不解释了。

4、width:100%,当父容器里有绝对定位的子元素时,子元素设置width:100%实际上指的是相对于父容器的padding+content的宽度。当子元素是非绝对定位的元素时width:100%才是指子元素的 content ,其等于父元素的 content宽度。

5、line-height。你知道line-height:150%和line-height:1.5的区别吗? line-height有单位时,子元素是继承父元素的line-height的,无单位时,其line-height等于无单位的数值乘以子元素本身的字体大小。显然为了不出现意外,还是建议首选无单位的。

6、ex和 ch单位。ex:取当前作用效果的字体的x的高度,在无法确定x高度的情况下以0.5em计算ch:以节点所使用字体中的“0”字符为基准,找不到时为0.5em。

ex和 ch单位,类似于 em和 rem,依赖于当前的字体和字体大小。但是,不同的是,这两货是基于字体的度量单位,依赖于设定的字体。7、使用calc时运算符之间要有空格 ,否则可能无效。

以上这7个知识点你们掌握了吗?更多的内容资讯,小编会及时发布在本平台,请及时关注哦!