css样式注意

时间:2021-04-13 21:45:03
  1. CSS3 font-face定义的字体使用时有时候用引号,有时候不用,很奇怪,如

@font-face{
font-family: Roboto-Black;
src: url('../package/fonts/Roboto-Black.ttf');
}

    p{font-family: "Roboto-Black", Sans-serif

    }

    <p style="font-family: Roboto-Black, Sans-serif"></p>

2、clear中用:after使用父元素,用div.clear则放在子元素下方

  3、text-overflow要与overflow一起用:overflow:hidden;text-overflow:ellipsis;最好加上white-space:nowrap;无空格。

  4、使用浮动和clear情况下,其他排放的元素position最好使用absolute,使用relative难以达到预想效果,这里relative往往需要使用px而不是百分比

  5、在使用:after、:before等元素中,要使样式显示出来必须要有content属性,其中content可以为"",如果不用:after、:before那么不需要content

  6、table最好设定一个宽度以便td能在合适的宽度内进行布局。td固定宽度用table-layout:fixed;table-layout写在table中,支持overflow。

  7、display: none;与visibility: hidden;联系与的区别

    联系:它们都能让元素不可见

    区别:

    (1)、display:none;会让元素完全从渲染树中消失,渲染的时候不占据任何空间;visibility: hidden;不会让元素从渲染树消失,渲染师元素继续占据空间,只是内容不可见
    (2)、display: none;是非继承属性,子孙节点消失由于元素从渲染树消失造成,通过修改子孙节点属性无法显示;visibility: hidden;是继承属性,子孙节点消失由于继承了hidden,通过设置visibility: visible;可以让子孙节点显式
    (3)、修改常规流中元素的display通常会造成文档重排。修改visibility属性只会造成本元素的重绘。
    (4)、读屏器不会读取display: none;元素内容;会读取visibility: hidden;元素内容

  8、float不脱离文本流,可以撑开父元素(使用clear、或者父元素也float、或者可以设置父元素overflow属性任意都行),尤其注意父元素里只有float元素的要注意collapse;position:absolute脱离文本流,不会撑开父元素,不能通过css方法实现撑开父元素,设置z-index:-1才能被float浮动在上方,否则都是position:absolute在上面。position:relative;仍然占据原来的空间,只是其实际位置可能改变,但空间仍是原来的空间。

  9、A Space between Inline-Block List Items

    display:inline-block的li元素间有空格,解决方法:每个li的开元素紧跟上一个li闭元素;或者ul的font-size:0;因为默认了ul的font-size为4px。