1.块级元素和行内元素分别有哪些?并列出4条以上的特性区别.
块级元素:
div
,p
,form
,ul
,li
,ol
,dl
,form
,address
,fieldset
,hr
,menu
,table
行内元素:a
,span
,strong
,em
,br
,img
,input
,label
,select
,textarea
,cite
,
区别
1.行内元素会在一条直线上排列,都是同一行的,水平方向排列
块级元素各占据一行,垂直方向排列。块级元素从新行开始结束接着一个断行。
2.块级元素可以包含行内元素和块级元素。行内元素不能包含块级元素。
3.行内元素与块级元素属性的不同,主要是盒模型属性上
4.块级元素默认宽度与浏览器宽度一样,与内容无关;行内元素宽度只与内容有关;
行内元素设置width无效,height无效(可以设置line-height),padding和margin上下无效,左右有效.
2.什么是 CSS 继承? 哪些属性能继承,哪些不能?
css继承:设置父级元素,其子级元素的样式会和父级元素一样。
有继承性的属性:
字体相关属性:font,font-family,font-weight,font-size,font-style,font-stretch,font-size-adjust
文本相关属性:text-indent(文本缩进),text-align,line-height,word-spacing,letter-spacing,text-transform,direction,color
元素可见性:visibility
表格布局属性:caption-side,border-collapse,border-spacing,empty-cells,table-layout
列表布局属性:list-style-type,list-style-image,list-style-position,list-style
生成内容属性:quotes
光标属性:cursor
页面样式属性:page,page-break-inside,window,orphans
声音样式属性:speak,speak-punctuation....
无继承性的属性:
display
文本属性:vertical-align,text-shadow,text-decoration,white-space,unicode-bidi
盒子模型相关属性:width,height,margin相关属性,border相关属性,padding相关属性
背景相关属性:background,background-XXX
定位属性:float,clear,position,top,right,bottom,left,min-width,min-height,max-width,max-height,overflow,clip,z-index
生成内容属性:content,counter-reset,counter-increment
轮廓样式属性:outline-style,outline=width,outline-color,outline
页面样式属性:size,page-break-before,page-break-after
声音样式属性:pause-before,pause-after,pause,cue-before,cue-after,cue,play-during
3.如何让块级元素水平居中?如何让行内元素水平居中?
块级元素居中语法:margin:0 auto;行内元素水平居中:text-align:center;
4.用 CSS 实现一个三角形
span {
display: block;
height: 0;
width: 0;
border-top: 100px red solid;
border-bottom: transparent 100px solid;
border-left: transparent 100px solid;
border-right: transparent 100px solid;
}
三角形的实现
5.单行文本溢出加 ...如何实现?
white-space:nowrap;不折行
overflow:hidden;超出部分隐藏
text-overflow:ellipsis;显示省略符号来代表被修剪的文本。
6.px, em, rem 有什么区别
px 相对元素,相对于浏览器的大小,注意ie无法调整使用px为单位的字体大小
em 相对元素,相对于字体的大小,注意字体大小的继承性
rem 相对元素,相对于根元素的大小,有利于修改网页的字体大小
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 这是使用 Unicode 编码的字体名,这个例子中, \5b8b 为Unicode的“宋”,\4f53 为Unicode的“体”,所以这个编码就是指“宋体”。