前端面试前言个人总结,收藏,分享,如有错误欢迎留言指正!1、CSS中的标准盒模型和IE盒模型有什么区别?盒子模型:(1)盒子模型有两种:IE盒子模型(border-box)、W3C标准盒子模型(content-box)(2)盒子模型:分为内容(content)、填充(padding)、边框(IE盒模型和W3C标准盒模型在margin)、border(边框)的区别:(1)W3C标准盒模型:属性width和height只包含content内容,不包含border和padding(2)IE盒模型:属性width和height包括content、border和padding,指的是content+padding+border。在ie8+浏览器中使用哪种盒模型可以通过box-sizing(CSS新增的属性)来控制,默认值为content-box,即标准盒模型;如果box-sizing设置为border-box,则IE使用框模型。如果在ie6、7、8中缺少DOCTYPE,盒子模型将被解释为IE盒子模型。如果在页面中声明了DOCTYPE类型,所有浏览器都会将框模型解释为W3C框模型。2.::before和:after中的双冒号和单冒号有什么区别?解释一下这两种伪元素的区别:在css3中,用单冒号表示伪类,用双冒号表示伪元素。但是,为了兼容已有的伪元素,在一些浏览器中,也可以使用单个冒号来表示伪元素。伪类一般匹配元素的一些特殊状态,比如hover、link等,而伪元素一般匹配特殊的位置,比如after、before等。功能:如果你想让插入的内容出现在其他内容之前,使用::before,否则使用::after;在代码顺序上,::after生成的内容也晚于::before生成的内容。从栈的角度来看,::after生成的内容会在::before生成的内容之上。3、CSS中哪些属性是可以继承的?无论属性是否在定义中被继承,每个属性都被赋予。当没有指定值时,继承的属性将使用父元素的相同属性的值作为它自己的值。一般继承的属性包括字体相关的属性,font-size和font-weight等。文本相关的属性,如color和text-align等。表格的一些布局属性,list-style等列表属性。还有游标属性cursor,元素可见性visibility。当一个属性不是继承的属性时,我们也可以通过设置它的值为inherit使其从父元素继承。4、显示值有哪些?解释他们的作用。块:块类型。默认宽度是父元素的宽度,宽度和高度可以设置,并且会换行显示。none:元素不显示并从文档流中删除。inline:内联元素类型。默认宽度为内容宽度,宽度和高度不能设置,会平行显示。inline-block:默认宽度为内容宽度,可以设置宽度和高度,并显示在一行中。list-item:显示为块类型元素,添加了样式列表标记。table:此元素将显示为块级表格。inherit:指定display属性的值应该从父元素继承。flex:设置子元素的灵活布局5、隐藏元素的常用方法?(1)使用显示:无;隐藏元素,渲染树将不包含渲染对象,因此元素不会在页面中占据位置,也不会响应绑定的监听事件。(2)使用visibility:hidden;隐藏元素。该元素在页面中仍然占据空间,但不会响应绑定的监听事件,属于继承属性。如果子元素使用visibility:visible,则不会被继承,子元素会再次出现。(3)使用不透明度:0;将元素的透明度设置为0以隐藏元素。该元素仍然占据页面上的空间,并且可以响应绑定到该元素的侦听器事件。(4)通过绝对定位将元素从可见区域移除,隐藏元素。(5)利用z-index的负值,使其他元素覆盖该元素,实现隐藏。(6)使用transform:scale(0,0)将元素缩放到0隐藏元素。在该方法中,元素仍然在页面中占据一个位置,但不会响应绑定的监听事件。6.如何设置透明度和差异?rgba只会改变当前颜色的不透明度。只要元素里面的元素相关的颜色都会透明,透明就是一种颜色。这种颜色称为透明色。为它设置一个元素的颜色或背景颜色7.
