CSS稍稍入门

1. 块级元素和行内元素分别有哪些?动手测试并列出4条以上的特性区别

块级元素(block-level)
div h1 h2 h3 h4 h5 h6 p hr form ul dl ol pre table li dd dt tr td th
行内元素(inline-level)
em strong span a br img button input label select textarea code script kbd

区别

  1. 块级元素默认会占据一整行,默认情况下其宽度自动填满父元素的宽度;
    行内元素不会独占一行,相邻的行内元素会排列在同一行知道排不下为止。
  2. 块级元素可以包含块级元素和行内元素,行内元素只能包含行内元素和文本
  3. 块级元素可以设置width和height,行内元素设置无效。
  4. 块级元素默认:display:block;行内元素默认:dipslay:inline;
  5. 对于margin和padding属性,块级元素会产生上下左右的内外边距效果。行内元素左右会产生边距效果,上下不会产生。

2. 什么是 CSS 继承? 哪些属性能继承,哪些不能?

CSS继承:继承就是子标签继承了上级标签的CSS样式的属性。

  • 能继承的属性:letter-spacing、word-spacing、white-space、line-height、color、font、font-family、font-size、font-style、font-variant、font-weight、text-decoration、text-transform、direction、list-style、list-style-type、list-style-position、list-style-image、text-indent和text-align
  • 不能继承的属性:display、margin、border、padding、background、height、min-height、max-height、width、min-width、max-width、overflow、position、left、right、top、bottom、z-index、float、clear、table-layout、vertical-align、page-break-after、page-bread-before和unicode-bidi

3. 如何让块级元素水平居中?如何让行内元素水平居中?

  • 块级元素水平居中:先设置块级元素的宽度,然后用margin: 0 auto水平居中;
  • 行内元素水平居中:1. 先用display:block将行内元素转换为块级元素,然后设置元素的宽度,再用margin: 0 auto控制水平居中。或者用text-align: center;

4. 用 CSS 实现一个三角形




  
  triangle


     

DEMO-triangle

5. 单行文本溢出加 ...如何实现?

在相应的文字上,加如下样式

.card > h3{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

6. px, em, rem 有什么区别

  • px: 绝对/固定单位,浏览器默认文字大小为16px ;
  • em: 相对单位,表示当前字体大小是父容器字体大小的多少倍;
  • rem:相对单位,表示当前字体大小是根元素(html)字体大小的多少倍 ;

7. 解释下面代码的作用?为什么要加引号? 字体里\5b8b\4f53代表什么?

body{
  font: 12px/1.5 tahoma,arial,'Hiragino Sans GB','\5b8b\4f53',sans-serif;
}
  1. Hiragino Sans GB之间有空格,所有要加上引号,避免被浏览器读取为多个字体名称
  2. 代码设置了body里面的字体样式,字体大小12px,字体行高为字体的1.5倍,然后设置了5种字体,按先后顺序匹配已有的字体来使用。
  3. 字体里\5b8b\4f53代表宋体,是把中文的“宋体”转化为了Unicode编码。

以下是CSS部分效果实现

样式一
样式二
样式三
样式四
样式五

你可能感兴趣的:(CSS稍稍入门)