css 常见面试题

1.盒模型

每一个盒子有四条边界:外边距边界margin, 边框边界border, 内边距边界padding与内容边界content

IE盒模型和W3C盒模型在计算总宽度存在一些差异

在W3C模型中: 总宽度 = margin-left + border-left + padding-left + width + padding-right + border-right + margin-right

在IE模型中: 总宽度 = margin-left + width + margin-right

在CSS3中引入了box-sizing属性, 它可以允许改变默认的CSS盒模型对元素宽高的计算方式.

共包括两个选项:

content-box:标准盒模型,CSS定义的宽高只包含content的宽高

border-box:IE盒模型,CSS定义的宽高包括了content,padding和border

2. 定位机制

标准文档流

从左到右,从上向下,输出文档内容

由块级元素(从左到右撑满页面,独占一行,触碰到页面边缘时自动换行的元素, 如div, ul, li, dl, dt, p)和行级元素组成(能在同一行内显示并且不会改变HTML文档结构,如span, input)

浮动

设置为浮动的元素将会往左(float:left)或者往右(float:right)漂移, 直到遇到阻挡 - 其他浮动元素或者父元素的边框。浮动元素不在标准文档流中占据空间,但会对其后的浮动元素造成影响。

绝对定位

设置为绝对定位的元素(posistion:absolute)将从标准文档流中删除,其所占据的标准流空间也不存在。然后通过top,left,right,bottom属性对其相对父元素进行定位。

3. Flex布局

Flexbox又叫弹性盒模型。它可以简单使用一个元素居中(包括水平垂直居中),可以让扩大和收缩元素来填充容器的可利用空间,可以改变源码顺序独立布局,以及还有其他的一些功能。

Flex布局是我最喜欢的布局,合理使用它能够大大减少布局方面的工作, 例如以上列举的三列布局也可以使用flex轻松实现。此外在移动端使用flex也比较常见。

4. 响应式布局(Responsive Web Design)

响应式布局是指,网页可以自动识别设备屏幕宽度,根据不同的宽度采用不同的CSS的样式,从而达到兼容各种设备的效果。

响应式布局使用媒体查询(CSS3 Media Queries), 根据不同屏幕分辨率采用不同CSS规则, 使用方式如下:

@mediascreenand(max-width:1024px) {/* 视窗宽度小于1024px时 */....}

5. 哪些属性可以继承?

Css中可以继承的属性如下:

文本相关属性:font-family、font-size、font-style、font-variant、font-weight、font 、letter-spacing、line-height、text-align、 text-indent、 text-transform 、word-spacing 、color;

列表相关属性:list-style-image、list-style-position、list-style-type、list-style;

表格相关属性:border-collapse、border-spacing、caption-side、table-layoute;

其他属性:Cursor、visibility

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,790评论 1 92
  • 1.行内元素和块级元素?img算什么?行内元素怎么转化为块级元素? 行内元素:和有他元素都在一行上,高度、行高及外...
    极乐君阅读 2,452评论 0 20
  • 走了 像当初一个人来那样 一个人走 我装着记忆 回到以前的城市 一切都是这样自然 像是回家一样 没有伤感 没有离别...
    Adeng白无常阅读 340评论 2 1
  • 也曾策马问天涯 逝水流年指间沙 众里寻她千百度 独守空山看落花 逝水流年指间沙 梅花落处已无她 但曾相逢了无恨 饮...
    星尘梦羽阅读 316评论 0 7