1.块级元素和行内元素分别有哪些?动手测试并列出4条以上的特性区别?##
块级元素:
<div>,<h1~h6>,<p>,<form>,<ul>,<ol>,<dl>,<dt>,<dd>,<li>,<table>,<tr>,<td>,<th>,<pre>
等;
行内元素:
<span>,<strong>,<em>,<a>,<img>,<br>,<button>,<input>,<label>,<select>,<textarea>,<code>,<script>
等;
1.块级元素可以包含文本,块级,行内元素,而行内元素只能包含文本和行内元素
2.块级元素会独占一行,其宽度自动填满其父元素宽度,行内元素不会独占一行,相邻的行内元素会排列在同一行里,知道一行排不下,才会换行,其宽度随元素的内容而变化
3.块级元素可以设置 width, height属性,行内元素设置width, height无效
4.块级元素可以设置margin 和 padding. 行内元素的水平方向的padding-left,padding-right,margin-left,margin-right 都产生边距效果,但是竖直方向的padding-top,padding-bottom,margin-top,margin-bottom都不会产生边距效果。行内元素上下padding对背景色和边框生校
2. 什么是 CSS 继承? 哪些属性能继承,哪些不能?##
继承就是子标签继承了上级(父级)标签的CSS样式的属性
能被继承的属性有:
- 文本相关属性:font-family, font-size(子类继承的不是实际值,而是计算后的值), font- style, font-variant, font-weight, font, letter-spacing, line-height, text-align, text-indent, text- transform, word-spacing
- 列表相关属性:list-style-image, list-style-position, list-style-type, list-style
- color属性
不能被继承的属性
display、margin、border、padding、background、height
3.用CSS实现一个三角形##
4. 单行文本溢出加...如何实现?##
设置文本属性
white-space:nomal; 设置文本不换行; overflow:hidden; 设置文本溢出隐藏; text-overflow:ellipsis; 设置溢出部分为“...”
5. px, em, rem 有什么区别##
- px单位
px(像素),相对于显示器屏幕分辨率而言的,屏幕设备能显示出的最小的一个点,这个点不是固定宽度的,不同设备上点的长宽比例有可能会不同 - em单位
em才是真正的“相对单位”,它不是一个具体的数值,而是相对于父元素的属性计算出来的大小,一般移动终端布局用em比较合适 - rem单位
rem这个单位是相对于根元素HTML的,而如果我们想修改大小,只需修改根元素HMTL 的大小就可以了
6. 解释下面代码的作用?为什么要加引号? 字体里的数字符号代表什么?##
body{ font: 12px/1.5 tahoma,arial,'Hiragino Sans GB','\5b8b\4f53',sans-serif; }
- body元素设置字体大小为12px,行高为其字体大小的1.5倍,字体的样式有五种,浏览器解析式页面时查找用户本地的字体库,如果有第一种字体就使用第一种,如果没有查找第二种,以此类推。
- 加引号是因为字体的名字中包含空格,若不加引号,浏览器解析字体名称时可能会发生错误。
- 数字符号为unicode码,避免了在使用字体名称为中文时编码不匹配产生乱码的情况。