1.块级元素和行内元素分别有哪些?动手测试并列出4条以上的特性区别。
- 块级元素
- div h1 h2 h3 h4 h5 h6 p hr form ul dl ol pre table li dd dt tr td th
- 行内元素
- em strong span a br img button input label select textarea
code script - 块级元素与行内元素的区别
- 行内元素在一条直线上,水平方向排行;块级元素各占据一行,垂直排行。
- 块级元素可以包含块级元素与行内元素;行内元素只能包含行内元素和文本。块级元素宽度在不设置的情况下,是它本身父容器的100%。而行内元素的宽度就是它包含的文字或图片的宽度。
- 宽高只对块级元素生效;对行内元素无效。
- 行内元素设置margin,padding属性只对左右生效,上下不生效;块级元素则上下左右都生效。
2.什么是 CSS 继承? 哪些属性能继承,哪些不能?
- css集成是指子元素的属性从父元素那里获得,当一个元素继承属性(inherited property)没有指定值时,从父元素那里取同属性的计算值 。
- 可继承的属性
- 字体组合属性
- font:组合字体
- font-family:规定元素的字体系列
- font-weight:设置字体的粗细
- font-size:设置字体的大小
- font-style:设置字体的风格
- font-variant:设置小型大写字母的字体显示文本,这意味着所有的小写字母均会被转换为大写,但是所有使用小型大写字体的字母与其余文本相比,其字体尺寸更小。
- font-stretch:对当前font-family进行变形。所有主流浏览器都不支持
- font-size-adjust:对某个元素规定一个 aspect 值,这样就能保证首选字体为x-height。 - 文本系列属性
- text-indent:文本缩进
- text-aligh:文本水平对齐
- text-geight:行高
- word-spacing:增加或减少单词间的空白(即字间隔)
- letter-spacing:增加或减少字符间的空白(即字符间距)
- text-transform:控制文本大小写
- directhon:规定文本的书写方向
- color:文本颜色 - 元素可见性:visibility
- 表格布局属性:caption-side、border-collapse、border-spacing、empty-cells、table-layout
- .列表布局属性:list-style-type、list-style-image、ist-style-position、list-style
- 不可继承属性
- display:规定元素应该生成框的类型
- 文本属性
- vertical-align:垂直文本对齐
- text-decoration:规定添加到文本的装饰
- text-shadow:文本阴影效果
- white-space:空白符的处理
- unicode-bidi:设置文本的方向 - 盒子模型属性:width、height、margin 、margin-top、margin-right、margin-bottom、margin-left、border、border-style、border-top-style、border-right-style、border-bottom-style、border-left-style、border-width、border-top-width、border-right-right、border-bottom-width、border-left-width、border-color、border-top-color、border-right-color、border-bottom-color、border-left-color、border-top、border-right、border-bottom、border-left、padding、padding-top、padding-right、padding-bottom、padding-left
- 背景属性:background、background-color、background-image、background-repeat、background-position、background-attachment
4.如何让块级元素水平居中?如何让行内元素水平居中?
块级元素水平居中:margin: o auto;
行内元素水平居中: 在包含行内元素的块级元素中加入属性 text-align: center;
5.用css绘制一个三角形
.tri{
width: 0px;
height: 0px;
border-top: 60px transparent solid;
border-right: 60px transparent solid;
border-bottom: 60px pink solid;
border-left: 60px transparent solid;
}
单行文本溢出加 ...如何实现?
p {
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里面字体为12像素,高度是12像素的1.5倍,字体为tahoma,后面用“,”分开的都是备用字体,若tahoma字体浏览器找到不到则依序排列进行查找。
- 引号表示字体包含空格,引号里面的是一个字体。
- 在 CSS 中设置字体时,直接写字体中文或英文名称浏览器都能识别,直接写中文的情况下编码(GB2312、UTF-8 等)不匹配时会产生乱码。保险的方式是将字体名称用Unicode来表示。代码中的'\5b8b\4f53'就是用Unicode表示的字体宋体。