border-radius

  • border-radius是向元素添加圆角边框
    使用方法:
    border-radius:10px; / 所有角都使用半径为10px的圆角 /
  • border-radius: 5px 4px 3px 2px; / 四个半径值分别是左上角、右上角、右下角和左下角,顺时针 /
  • border-radius还可以用px单位,你还可以用百分比或者em,但兼容性目前还不太好

box-shadow

  • box-shadow是向盒子添加阴影。支持添加一个或者多个
    语法:box-shadow: X轴偏移量 Y轴偏移量 [阴影模糊半径] [阴影扩展半径] [阴影颜色] [投影方式];(投影方式inset为内部阴影,不写默认为外阴影,inset 可以写在参数的第一个或最后一个,其它位置是无效的)
  • 如果添加多个阴影,只需用逗号隔开即可

    1
    2
    3
    .box_shadow{
    box-shadow:4px 2px 6px #f00, -4px -2px 6px #000, 0px 0px 12px 5px #33CC00 inset;
    }
  • 阴影模糊半径与阴影扩展半径的区别:
    阴影模糊半径:此参数可选,其值只能是为正值,如果其值为0时,表示阴影不具有模糊效果,其值越大阴影的边缘就越模糊;

    阴影扩展半径:此参数可选,其值可以是正负值,如果值为正,则整个阴影都延展扩大,反之值为负值时,则缩小

border-image

  • 边框应用背景图片
    语法:border-image:url(picpath) 70 model;
    picpath:图片路径,70切割图片的宽度px,model:repeat(重复),round(平铺),streth(拉伸)

    ### 颜色RGBA

  • RGBA是在RGB的基础上增加了控制alpha透明度的参数
    语法:
    1
    colorrgba(R,G,B,A)

以上R、G、B三个参数,正整数值的取值范围为:0 - 255。百分数值的取值范围为:0.0% - 100.0%。超出范围的数值将被截至其最接近的取值极限。并非所有浏览器都支持使用百分数值。A为透明度参数,取值在0~1之间,不可为负值。

渐变色彩

  • CSS3 Gradient 分为线性渐变(linear)和径向渐变(radial)
    语法:
    1
    background-image:linear-gradient(to left, red, orange,yellow,green,blue,indigo,violet);

第一个参数省略时,默认为“180deg”,等同于“to bottom”。

1
2
3
4
5
6
to top #从下到上
to right #从左到右
to bottom #从上到下
to left #从右到左
to top left #右下角到左上角
to top right #从左下角到右上角

第二个和第三个参数,表示颜色的起始点和结束点,可以有多个颜色值

text-overflow 与 word-wrap

  • text-overflow用来设置是否使用一个省略标记(…)标示对象内文本的溢出
    语法:
    1
    text-overflow:ellipsis|clip; <!--clip:剪切,ellipsis显示省略号 -->

text-overflow只是用来说明文字溢出时用什么方式显示,要实现溢出时产生省略号的效果,还须定义强制文本在一行内显示(white-space:nowrap)及溢出内容为隐藏(overflow:hidden),只有这样才能实现溢出文本显示省略号的效果,代码如下:

1
2
3
text-overflow:ellipsis;
overflow:hidden;
white-space:nowrap;

  • word-wrap也可以用来设置文本行为,当前行超过指定容器的边界时是否断开转行
    1
    word-wrap:normal|break-work <!-- -->

normal为浏览器默认值,break-word设置在长单词或 URL地址内部进行换行,此属性不常用,用浏览器默认值即可

@font-face

  • @font-face能够加载服务器端的字体文件,让浏览器端可以显示用户电脑里没有安装的字体
    语法:
    1
    2
    3
    4
    @font-face {
    font-family : 字体名称;
    src : 字体文件在服务器上的相对或绝对路径;
    }

使用字体

1
2
3
4
5
p {
font-size :12px;
font-family : "My Font";
/*必须项,设置@font-face中font-family同样的值*/
}

text-shadow

  • text-shadow可以用来设置文本的阴影效果。
    语法:
    1
    text-shadow: X-Offset Y-Offset blur color;

X-Offset:表示阴影的水平偏移距离,其值为正值时阴影向右偏移,反之向左偏移;

Y-Offset:是指阴影的垂直偏移距离,如果其值是正值时,阴影向下偏移,反之向上偏移;

Blur:是指阴影的模糊程度,其值不能是负值,如果值越大,阴影越模糊,反之阴影越清晰,如果不需要阴影模糊可以将Blur值设置为0;

Color:是指阴影的颜色,其可以使用rgba色。

background-origin

  • 设置元素背景图片的原始起始位置
    语法:
    1
    background-origin : border-box | padding-box | content-box;

参数分别表示背景图片是从边框,还是内边距(默认值),或者是内容区域开始显示,
需要注意的是,如果背景不是no-repeat,这个属性无效,它会从边框开始显示

background-clip

  • 将背景图片做适当的裁剪以适应实际需要
    语法:
    1
    background-clip : border-box | padding-box | content-box | no-clip

参数分别表示从边框、或内填充,或者内容区域向外裁剪背景。no-clip表示不裁切,和参数border-box显示同样的效果。backgroud-clip默认值为border-box

background-size

  • 设置背景图片的大小,以长度值或百分比显示,还可以通过cover和contain来对图片进行伸缩    
    语法:
    1
    background-size: auto | <长度值> | <百分比> | cover | contain

1.auto:默认值,不改变背景图片的原始高度和宽度;

2.<长度值>:成对出现如200px 50px,将背景图片宽高依次设置为前面两个值,当设置一个值时,将其作为图片宽度值来等比缩放;

3、<百分比>:0%~100%之间的任何值,将背景图片宽高依次设置为所在元素宽高乘以前面百分比得出的数值,当设置一个值时同上;

4、cover:顾名思义为覆盖,即将背景图片等比缩放以填满整个容器;

5、contain:容纳,即将背景图片等比缩放至某一边紧贴容器边缘为止

multiple backgrounds

  • 多重背景,也就是CSS2里background的属性外加origin、clip和size组成的新background的多次叠加,缩写时为用逗号隔开的每组值;用分解写法时,如果有多个背景图片,而其他属性只有一个(例如background-repeat只有一个),表明所有背景图片应用该属性值
    语法:
    1
    background : [background-color] | [background-image] | [background-position][/background-size] | [background-repeat] | [background-attachment] | [background-clip] | [background-origin],...

用逗号隔开每组 background 的缩写值;
如果有 size 值,需要紧跟 position 并且用 “/“ 隔开;
如果有多个背景图片,而其他属性只有一个(例如 background-repeat 只有一个),表明所有背景图片应用该属性值。
background-color 只能设置一个

属性选择器通配符

  • E[att^=”val”]
    选择匹配元素E,且E元素定义了att属性,其属性值以val开头的任何字符串
  • E[att$=”val”]
    选择匹配元素E,且E元素定义了att属性,其属性值以val结尾的任何字符串
  • E[att*=”val”]
    选择匹配元素E,且E元素定义了att属性,其属性值以val包含的任何字符串
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    a[class^=icon]{
    background: green;
    color:#fff;
    }
    a[href$=pdf]{
    background: orange;
    color: #fff;
    }
    a[title*=more]{
    background: blue;
    color: #fff;
    }

结构性伪类选择器—root

  • :root选择器,从字面上我们就可以很清楚的理解是根选择器,他的意思就是匹配元素E所在文档的根元素。在HTML文档中,根元素始终是。
    “:root”选择器等同于元素,简单点说:
    :root{background:orange}效果相同
    html {background:orange;}

结构性伪类选择器—not

  • :not选择器称为否定选择器,和jQuery中的:not选择器一模一样,可以选择除某个元素之外的所有元素
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    form {
    width: 200px;
    margin: 20px auto;
    }
    div {
    margin-bottom: 20px;
    }
    input:not([type="submit"]){
    border:1px solid red;
    }

empty

  • :empty选择器表示的就是空。用来选择没有任何内容的元素,这里没有内容指的是一点内容都没有,哪怕是一个空格
    1
    2
    3
    4
    5
    6
    7
    p{
    background: orange;
    min-height: 30px;
    }
    p:empty {
    display: none;
    }​

target

  • :target选择器称为目标选择器,用来匹配文档(页面)的url的某个标志符的目标元素
  • #brand与后面的id=”brand”是对应的,当同一个页面上有很多的url的时候你可以取不同的名字,只要#号后对的名称与id=””中的名称对应就可以了
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <h2><a href="#brand">Brand</a></h2>
    <div class="menuSection" id="brand">
    content for Brand
    </div>
    <h2><a href="#jake">Brand</a></h2>
    <div class="menuSection" id="jake">
    content for jake
    </div>
    <h2><a href="#aron">Brand</a></h2>
    <div class="menuSection" id="aron">
    content for aron
    </div>
1
2
3
4
5
6
7
8
9
10
11
12
#brand:target {
background: orange;
color: #fff;
}
#jake:target {
background: blue;
color: #fff;
}
#aron:target {
background: red;
color: #fff;
}

first-child

  • “:first-child”选择器表示的是选择父元素的第一个子元素的元素E。简单点理解就是选择元素中的第一个子元素,记住是子元素,而不是后代元素

last-child

  • “:last-child”选择器与“:first-child”选择器作用类似,不同的是“:last-child”选择器选择的是元素的最后一个子元素