CSS面试题

tech2023-02-04  94

两种盒子模型

border-box (ie盒模型)content-box(w3c标准盒模型)为什么borderbox更好因为写起来更方便,width表示content+padding+border。而contentbox的width就是content

如何实现垂直居中

水平居中:内联:父元素身上写 text-align:center;块级:margin-left: auto; margin-right: auto;垂直居中:1.table自带的垂直居中功能2.div display设置成table3 margin-top设置成高度的-50%4 translate设置-50%5 flex

选择器优先级如何确定

选择器越具体 优先级越高 比如#xx大于.yy同样优先级,后写的覆盖前面的加了!important 优先级最高

flex布局

flex-direction 决定主轴方向

flex-direction: row(左端起点)| row-reverse(右端起点) | column(上端起点) | column-reverse(下端起点)

flex-wrap

默认情况下,项目都排在一条线(又称"轴线")上。flex-wrap属性定义,如果一条轴线排不下,如何换行。

flex-wrap: nowrap(不换行) | wrap(换行 第一行在上方) | wrap-reverse(换行 第一行在下方)

flex-flow

flex-flow属性是flex-direction属性和flex-wrap属性的简写形式,默认值为row nowrap。

flex-flow: <flex-direction> || <flex-wrap>;

justify-content

justify-content属性定义了项目在主轴上的对齐方式。

justify-content: flex-start | flex-end | center | space-between | space-around; flex-start(默认值):左对齐flex-end:右对齐center: 居中space-between:两端对齐,项目之间的间隔都相等。space-around:每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍。

align-items

align-items属性定义项目在交叉轴上如何对齐。

flex-start:交叉轴的起点对齐。flex-end:交叉轴的终点对齐。center:交叉轴的中点对齐。baseline: 项目的第一行文字的基线对齐。stretch(默认值):如果项目未设置高度或设为auto,将占满整个容器的高度。 align-items: flex-start | flex-end | center | baseline | stretch;

align-content

align-content属性定义了多根轴线的对齐方式。如果项目只有一根轴线,该属性不起作用。

align-content: flex-start | flex-end | center | space-between | space-around | stretch; flex-start:与交叉轴的起点对齐。flex-end:与交叉轴的终点对齐。center:与交叉轴的中点对齐。space-between:与交叉轴两端对齐,轴线之间的间隔平均分布。space-around:每根轴线两侧的间隔都相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍。stretch(默认值):轴线占满整个交叉轴。

BFC是什么

块级格式化上下文如果给一个div写overflow:hidden,那div里的浮动元素就会被他包裹起来 举例:overflow:hidden 清除浮动。(方方总是用 .clearfix 清除浮动,坚决不用 overflow:hidden 清除浮动)overflow:hidden 取消父子 margin合并。

如何清除浮动

overflow:hidden 不过不建议clearfix 清除浮动写在父元素的身上
最新回复(0)