1.块级元素和行内元素分别有哪些?动手测试并列出4条以上的特性区别
块级元素:
div , p , form, ul, li , ol, dl, form, address, fieldset, hr, menu, table
行内元素:
span, strong, em, br, img , input, label, select, textarea, cite
区别:
1.块级元素默认会占据一整行,默认情况下其宽度自动填满父元素的宽度;行内元素不会独占一行,相邻的行内元素会排列在同一行知道排不下为止。
2.块级元素可以包含块级元素和行内元素,行内元素只能包含行内元素和文本
3.块级元素可以设置width和height,行内元素设置无效。
4.块级元素默认:display:block;行内元素默认:dipslay:inline;
5.对于margin和padding属性,块级元素会产生上下左右的内外边距效果。行内元素左右会产生边距效果,上下不会产生。
2.什么是 CSS 继承? 哪些属性能继承,哪些不能?
- css继承:设置父级元素,其子级元素的样式会和父级元素一样。
- 能继承的属性:letter-spacing、word-spacing、white-space、line-height、color、font、font-family、font-size、font-style、font-variant、font-weight、text-decoration、text-transform、direction、list-style、list-style-type、list-style-position、list-style-image、text-indent和text-align
- 不能继承的属性:display、margin、border、padding、background、height、min-height、max-height、width、min-width、max-width、overflow、position、left、right、top、bottom、z-index、float、clear、table-layout、vertical-align、page-break-after、page-bread-before和unicode-bidi
3.如何让块级元素水平居中?如何让行内元素水平居中?
- 块级元素水平居中:先设置块级元素的宽度,然后用margin:0 auto控制水平居中;
- 行内元素水平居中:先用display:block将行内元素转换为块级元素,然后设置元素的宽度,再用margin:0 auto控制水平居中。
4.用 CSS 实现一个三角形
5.单行文本溢出加 ...如何实现?
6.px, em, rem 有什么区别
px: 固定单位;
em: 相对单位,相对于父元素字体大小;
rem: 相对单位,相对于根元素(html)字体大小;
7.解释下面代码的作用?为什么要加引号? 字体里\5b8b\4f53代表什么?
body{
font: 12px/1.5 tahoma,arial,'Hiragino Sans GB','\5b8b\4f53',sans-serif;
}
代码设置了body里面的字体样式,字体大小12px,字体行高为字体的1.5倍,然后设置了5种字体,按先后顺序匹配已有的字体来使用。'Hiragino Sans GB'加引号是因为该字体由多个单词组成,并且单词之间有空格,不加引号可能导致用户浏览器不能识别字体,产生乱码。字体里\5b8b\4f53代表宋体,是把中文的“宋体”转化为了Unicode编码。