总结的一些CSS面试题(持续更新中~~~)

1,box-sizing属性?

用来控制元素的盒子模型的解析模式,默认为content-box
context-box:W3C的标准盒子模型,设置元素的 height/width 属性指的是content部分的高/宽
border-box:IE传统盒子模型。设置元素的height/width属性指的是border + padding + content部分的高/宽

2,CSS选择器有哪些?哪些属性可以继承?
CSS选择符:

id选择器(#myid)、类选择器(.myclassname)、标签选择器(div, h1, p)、相邻选择器(h1 + p)、子选择器(ul > li)、后代选择器(li a)、通配符选择器(*)、属性选择器(a[rel=”external”])、伪类选择器(a:hover, li:nth-child)

可继承的属性:font-size, font-family, color
不可继承的样式:border, padding, margin, width, height
3, CSS3新增伪类有那些?

p:first-of-type 选择属于其父元素的首个元素
p:last-of-type 选择属于其父元素的最后元素
p:only-of-type 选择属于其父元素唯一的元素
p:only-child 选择属于其父元素的唯一子元素
p:nth-child(2) 选择属于其父元素的第二个子元素
:enabled :disabled 表单控件的禁用状态。
:checked 单选框或复选框被选中。

4,display有哪些值?说明他们的作用?

inline(默认)–内联
none–隐藏
block–块显示
table–表格显示
list-item–项目列表
inline-block

5,position的值?

static(默认):按照正常文档流进行排列;
relative(相对定位):不脱离文档流,参考自身静态位置通过 top, bottom, left, right 定位;
absolute(绝对定位):参考距其最近一个不为static的父级元素通过top, bottom, left, right 定位;
fixed(固定定位):所固定的参照对像是可视窗口。

6,CSS3有哪些新特性?

1,RGBA和透明度
2,background-image background-origin(content-box/padding-box/border-box) background-size,
3,background-repeat
4,word-wrap(对长的不可分割单词换行)word-wrap:break-word,
5,文字阴影:text-shadow: 5px 5px 5px #FF0000;(水平阴影,垂直阴影,模糊距离,阴影颜色)
6,font-face属性:定义自己的字体
7,圆角(边框半径):border-radius 属性用于创建圆角,
8,边框图片:border-image: url(border.png) 30 30 round
9,盒阴影:box-shadow: 10px 10px 5px #888888
10,媒体查询:定义两套css,当浏览器的尺寸变化时会采用不同的属性

7, 请解释一下CSS3的flexbox(弹性盒布局模型),以及适用场景?

该布局模型的目的是提供一种更加高效的方式来对容器中的条目进行布局、对齐和分配空间。在传统的布局方式中,block 布局是把块在垂直方向从上到下依次排列的;而 inline 布局则是在水平方向来排列。弹性盒布局并没有这样内在的方向限制,可以由开发人员自由操作。
试用场景:弹性布局适合于移动前端开发,在Android和ios上也完美支持。

8, 一个满屏品字布局如何设计?

1,第一种真正的品字:

三块高宽是确定的;
上面那块用margin: 0 auto;居中;
下面两块用float或者inline-block不换行;
用margin调整位置使他们居中。
第二种全屏的品字布局:,

2,上面的div设置成100%,下面的div分别宽50%,然后使用float或者inline使其不换行。

9,display:none与visibility:hidden的区别?

display:none 不显示对应的元素,在文档布局中不再分配空间(回流+重绘)
visibility:hidden 隐藏对应元素,在文档布局中仍保留原来的空间(重绘)

10,为什么会出现浮动和什么时候需要清除浮动?清除浮动的方式?

浮动元素碰到包含它的边框或者浮动元素的边框停留。由于浮动元素不在文档流中,所以文档流的块框表现得就像浮动框不存在一样。浮动元素会漂浮在文档流的块框上。
浮动带来的问题:

1,父元素的高度无法被撑开,影响与父元素同级的元素
2,与浮动元素同级的非浮动元素(内联元素)会跟随其后
3,若非第一个元素浮动,则该元素之前的元素也需要浮动,否则会影响页面显示的结构。
清除浮动的方式:

1,父级div定义height
2,最后一个浮动元素后加空div标签 并添加样式clear:both。
3,包含浮动元素的父标签添加样式overflow为hidden或auto。
4,父级div定义zoom

你可能感兴趣的:(总结的一些CSS面试题(持续更新中~~~))