程序猿之---CSS面试题

67 阅读2分钟

1 ,css的优先级,权重

!important>style>id>class,伪类,属性>标签,伪元素>通配符

无穷大>1000>100>10>1>0

  2 ,盒子的模型

标准盒模型是,内容+边框+padding

怪异盒模型是,内容包含了边框和padding

通过css的box-sizing属性切换模式:标准盒模型是coontent-box,怪异盒模型是border-box怪异盒模型

3 ,盒子水平垂直居中的方式

(1)     子绝父相,给子盒子top,left 50% ,利用margin-top和margin-left给-50%

(2)     利用flex布局,给父盒子设置display:flex, 子盒子居中,样式写在父盒子内,just-content:center, align-items:center

(3)     利用transform, 子绝 父相,给子盒子设置left,top 为50% 在transform,translate中设置-50%,-50%

4 ,css的书写顺序

定位>尺寸>文字>背景>其他

BFC

(1)     BFC是块级格式上下文,相当于是一个容器,里面的布局不会影响到外面的元素。

(2)     使用场景:外边距重叠,阻止浮动元素的覆盖

(3)     清除浮动:设置display: block,给父级设置overflow: hidden,给父级设置宽和高

5Flex 布局

Flex布局是弹性布局,任何一个容器都可以指定为 Flex 布局

flex 布局原理: 通过给父元素添加 flex 属性,来控制子盒子的位置和排列方式

常用的属性:

(1)    flex-direction决定主轴的方向,可以决定子项目排列方向比如垂直column,水平方向row

(2)    flex-wrap 决定项目在一条线上排列还是换行

(3)    just-content 决定子项目在主轴上的对齐方式,center 居中,space-around平分剩余的空间,space-between先两边贴边在平分剩余的空间

(4)    align-items  子项目在交叉轴上的对齐方式,centerc垂直居中

(5)    align-content - 设置侧轴上的子元素排列方式 (使用多行,比如在换行的情况下,单行没有效果)

(6)    flex-flow 是 flex-direction 和 flex-wrap 的复合属性

 

6 ,Css实现三角形的方法

1)写一个div 宽和高给0,设置border边框,border-top: 50px solid skyblue;另外left right bottom给透明transparent