常见CSS面试题

70 阅读2分钟

1、如何理解HTML语义化?

  • 让人更容易理解
  • 让搜索引擎更容易搜到

2、html标签哪些是块状元素哪些是内联元素?

  • 块状元素:div、p、table、ul/li、h1/h2等
  • 内联元素:span、img、input、button

3、offsetwidth的值包含哪些?如何让width等于offsetwidth?

offsetwidth:包含内容宽度、边框宽度、内边距。 例子:

#div1 {
    width:100px;
    padding:10px;
    border:1px solid #ccc;
    margin:10px
}

问:div1的offsetwidth是多少? 答案:122px

设置box-sizing:border-box让width等于offsetwidth

4、maring纵向重叠的问题

例子:

<style>
p {
    font-size:16px;
    line-height:1;
    margin-top:10px;
    margin-bottom:15px;
}
</style>
<p>AAA</p>
<p></p>
<p></p>
<p></p>
<p>BBB</p>

问:AAA和BBB之间的距离是多少?答:15px;

5、margin负值问题,对 margin的 top left right bootom设置负值有何效果?

top和left为负值该元素移动,right和bottom为负值相邻元素移动

6、什么是BFC?如何应用?

一块独立的区域,内容不影响外界元素,设置overflow不是visble或者float不是none或者position为absolute/fixed

7、float,如何实现圣杯布局和双飞翼布局?手写clearfix

代码较多就不贴了

8、flex布局,实现一个三点色子

代码较多就不贴了

9、如何实现水平居中,垂直居中

水平居中:
  • inline元素:text-aligin:center
  • block元素:margin:auto
  • absolute元素:left:50%+margin-left负值
垂直居中:
  • inline元素:line-height=height
  • absolute元素:top:50%+margin-top负值和transform(-50%,-50%)和top,left,bottom,right=0+margin:auto

10、line-height如何继承

  • 具体值,如30px,则继承该值
  • 比例,如2/1.5,则继承比例
  • 写百分比,如200%,则继承计算出来的值(考点)

11、rem是什么?

  • px,绝对长度单位,最常用
  • em,相对长度单位,相对于父元素,不常用
  • rem,相对长度单位,相对于根元素,常用语响应式布局

12、响应式布局的常用方案

media-query,根据不同的屏幕宽度设置根元素font-size rem,基于根元素的相对单位