1.块级元素和行内元素分别有哪些?动手测试并列出4条以上的特性区别####
块级元素:div h1 h2 h3 h4 h5 h6 p hr form ul dl ol pre table li dd dt tr td th blockquote address
行内元素:em strong span a br img button iput label select textarea code script i q var cite
区别:
1.每个块级元素都从新的一行开始,并且其后的元素也另起一行。一个块级元素独占一行。行内元素只占据自身宽度空间,行内元素和其他元素都在一行上。
2.块级元素默认宽度与浏览器宽度一样而与内容无关。行内元素宽度随着内容增加,高度随字体大小而改变,
2.块级元素的高度、宽度、行高以及顶和底边距都可设置。行内元素不可以设置宽高,可以设置margin和padding,但是不对上下起作用,只能对左右起作用。
3.块级元素可以包含块级元素和行内元素,行内元素只能包含文本和行内元素。
2.什么是 CSS 继承? 哪些属性能继承,哪些不能?####
继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代。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
3.如何让块级元素水平居中?如何让行内元素水平居中?####
块级元素居中:margin:0 auto;
行内元素居中:text-align:center
4.用 CSS 实现一个三角形####
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS Bin</title>
<style>
.triangle{
width:0px;
border-top:solid 20px transparent;
border-right:solid 20px transparent;
border-bottom:solid 20px blue ;
border-left:solid 20px blue;
}
</style>
</head>
<body>
<div class="triangle"></div>
</body>
</html>
5.单行文本溢出加 ...如何实现?####
white-space: nowrap;文本不折行
overflow: hidden;隐藏溢出文本
text-overflow: ellipsis;用...代表隐藏部分
6.px, em, rem 有什么区别####
px:固定单位。
em:相对单位,相对于父元素字体大小。例如父元素的 font-size为14px ,那么 1em = 14px。
rem:相对单位,相对于根元素(html)字体大小。
7.解释下面代码的作用?为什么要加引号? 字体里\5b8b\4f53代表什么?####
body{
font: 12px/1.5 tahoma,arial,'Hiragino Sans GB','\5b8b\4f53',sans-serif;
}
作用:设置字体大小为12px行高1.5,字体的优先顺序依次为 tahoma,arial,'Hiragino Sans GB','\5b8b\4f53',sans-serif。首选第一种字体,没有则用第二个,依此类推。
引号里是一种字体,加引号是因为中间有空格,不加上引号会被识别成几个或者不能识别。
\5b8b\4f53是unicode编码,表示宋体。这种表示方法是最通用的,直接写宋体可能浏览器识别不了。