1、块级元素和行内元素分别有哪些?动手测试并列出4条以上的特性区别
块级元素:div h1 h2 h3 h4 h5 h6 p hr form ul dl ol pre table li dd dt tr td th
块级元素特点:
- 独立占据一行,即使设置宽度后,仍然是独立占据一行
- 宽度、高度均可设置,margin padding 值均可调试
- 不设置宽度的情况下,默认宽度、高度是父级元素的宽高;
行内元素: span em strong a br img button iput label select textarea code script
行内元素(inline-block 也叫内联元素)特点:
- 不独立占据一行,和其他行内元素在同一行,除非排满后换到第二行
- 宽度、高度不可设置,margin-top与margin-bottom值不可用,但是margin-left or right以及padding值得属性可以用 (http://js.jirengu.com/womekovike/1/edit)
- 不设置宽度的情况下,默认宽度、高度是其内字体的宽高
2、什么是 CSS 继承? 哪些属性能继承,哪些不能?
一、无继承性的属性
1、display:规定元素应该生成的框的类型
2、文本属性:
vertical-align:垂直文本对齐
text-decoration:规定添加到文本的装饰
text-shadow:文本阴影效果
white-space:空白符的处理
unicode-bidi:设置文本的方向
3、盒子模型的属性: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
4、背景属性:background、background-color、background-image、background-repeat、background-position、background-attachment
5、定位属性:float、clear、position、top、right、bottom、left、min-width、min-height、max-width、max-height、overflow、clip、z-index
6、生成内容属性:content、counter-reset、counter-increment
7、轮廓样式属性:outline-style、outline-width、outline-color、outline
8、页面样式属性:size、page-break-before、page-break-after
9、声音样式属性:pause-before、pause-after、pause、cue-before、cue-after、cue、play-during
二、有继承性的属性
1、字体系列属性
font:组合字体
font-family:规定元素的字体系列
font-weight:设置字体的粗细
font-size:设置字体的尺寸
font-style:定义字体的风格
font-variant:设置小型大写字母的字体显示文本,这意味着所有的小写字母均会被转换为大写,但是所有使用小型大写字体的字母与其余文本相比,其字体尺寸更小。
font-stretch:对当前的 font-family 进行伸缩变形。所有主流浏览器都不支持。
font-size-adjust:为某个元素规定一个 aspect 值,这样就可以保持首选字体的 x-height。
2、文本系列属性
text-indent:文本缩进
text-align:文本水平对齐
line-height:行高
word-spacing:增加或减少单词间的空白(即字间隔)
letter-spacing:增加或减少字符间的空白(字符间距)
text-transform:控制文本大小写
direction:规定文本的书写方向
color:文本颜色
3、元素可见性:visibility
4、表格布局属性:caption-side、border-collapse、border-spacing、empty-cells、table-layout
5、列表布局属性:list-style-type、list-style-image、list-style-position、list-style
6、生成内容属性:quotes
7、光标属性:cursor
8、页面样式属性:page、page-break-inside、windows、orphans
9、声音样式属性:speak、speak-punctuation、speak-numeral、speak-header、speech-rate、volume、voice-family、pitch、pitch-range、stress、richness、、azimuth、elevation
三、所有元素可以继承的属性
1、元素可见性:visibility
2、光标属性:cursor
四、内联元素可以继承的属性
1、字体系列属性
2、除text-indent、text-align之外的文本系列属性
五、块级元素可以继承的属性
1、text-indent、text-align
3、如何让块级元素水平居中?如何让行内元素水平居中?
块级元素水平居中:margin:0 auto 上下margin值为0 ,左右值为自动,即左右距离相等
行内元素水平居中:设置文本 text-align:center;
4、用 CSS 实现一个三角形
将宽高,全部设置为0
(http://js.jirengu.com/yetibocake/1/edit)
5、单行文本溢出加 ...如何实现?
如以下命令:
card > h3{
white-space: nowrap;//设置超出的字排在同一行
overflow: hidden;//将超出边框的字隐藏
text-overflow: ellipsis;//将超出边框隐藏的字以...省略号显示
}
6、px, em, rem 有什么区别
px: 固定单位
em: 相对单位,相对于父元素字体大小,一般而言是相对于body标签
rem: 相对单位,相对于根元素(html)字体大小
7、解释下面代码的作用?为什么要加引号? 字体里\5b8b\4f53代表什么?
body{
font: 12px/1.5 tahoma,arial,'Hiragino Sans GB','\5b8b\4f53',sans-serif;
}
字体12px,1.5倍的行高,\5b8b 宋\4f53体,合起来是宋体的意思,加引号是为了防止有的字母间有空格,而把误认为是两个不同含义的代码,加引号就把变成了同一个代码了
代码一边框:http://js.jirengu.com/zucahebopo/1/edit?html,css
代码二按钮阴影:http://js.jirengu.com/bicizubena/3/edit?html,css,output
http://js.jirengu.com/rogovojoya/1/edit?html,css,output(用了浮动)
代码三表格代码:http://js.jirengu.com/yujemuvize/2/edit?html,css,output
代码四三角形:http://js.jirengu.com/mocukuqoki/3/edit?html,output
代码五图片溢出:http://js.jirengu.com/sinawohewe/1/edit