1.块级元素和行内元素分别有哪些?动手测试并列出4条以上的特性区别
-
块级元素:
<p> <div> <h1>~<h6> <hr> <form> <ul> <ol> <li> <dl> <pre> <table> <dd> <dt> <tr> <th>
-
行内元素:
<span> <img> <em> <strong> <a> <br> <button> <input> <label> <select> <textarea> <code> <script>
区别特性:
- 块级元素独占一行,默认情况下会填满父元素宽度,而行内元素的相邻元素会排在一行吗,其宽度随内容的变化而变化。
- 块级元素可以设置宽高,而行内元素不可以。
- 块级元素可以设置padding和margin,而行内元素只可设置左右内外边距
- 块级元素可以包含块级元素和行内元素,行内元素只能包含文本和行内元素。
2.什么是 CSS 继承? 哪些属性能继承,哪些不能?
CSS继承是指子元素将继承父元素所拥有的属性。
可继承属性:
所有元素可继承:visibility和cursor。
内联元素可继承: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。
块状元素可继承:text-indent和text-align。
列表元素可继承:list-style、list-style-type、list-style-position、list-style-image。
表格元素可继承:border-collapse。
不可继承属性: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。
行内元素水平居中:text-align: center。
4.用 CSS 实现一个三角形
.san {
width: 0px;
height: 0px;
border-top: solid 30px red;
border-right: solid 30px transparent;
border-bottom: solid 30px transparent;
border-left: solid 30px transparent;
}
5.单行文本溢出加 ...如何实现?
.h3 {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
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,字体样式依次为tahoma,arial,'Hiragino Sans GB','\5b8b\4f53',sans-serif。
加引号原因:因为单词之间有空格,不加引号会被认为两个字体。
字体里\5b8b\4f53代表宋体的unicode编码。