CSS3 新特性

1. border-radius

-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;

Safari 5IE 9都支持border-radius格式

所有属性

  • border-radius
  • border-top-left-radius
  • border-top-right-radius
  • border-bottom-right-radius
  • border-bottom-left-radius

2. border-image

#borderimg {
    border: 10px solid transparent;
    padding: 15px;
    -webkit-border-image: url(border.png) 30 round; /* Safari 3.1-5 */
    -o-border-image: url(border.png) 30 round; /* Opera 11-12.1 */
    border-image: url(border.png) 30 round;
}

3. Backgrounds

属性 说明
background-clip 指定背景画的区域
background-image 指定一个或者多个背景图片
background-origin 指定背景图片放到哪里
background-size 指定背景图片的大小

3.1 指定背景尺寸

body {
    background: url(path/to/image.jpg) no-repeat;
    -moz-background-size: 100% 100%;
    -o-background-size: 100% 100%;
    -webkit-background-size: 100% 100%;
    background-size: 100% 100%;
}

3.2 多个背景图片

.box {
    background: url(image/path.jpg) 0 0 no-repeat,
    url(image2/path.jpg) 100% 0 no-repeat;
}

4. Gradients 渐变

4.1 两种渐变模式

  • Linear Gradients (goes down/up/left/right/diagonally)
  • Radial Gradients (defined by their center)

IE 10才开始支持

background: linear-gradient(direction, color-stop1, color-stop2, ...);

5. Shadows

5.1 两种 Shadow

  • text-shadow
  • box-shadow

5.2 text-shadow

h1 {
    text-shadow: 2px 2px 5px red;
}

5.3 box-shadow

div.card {
    width: 250px;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    text-align: center;
}

box-shadow接受四个参数:

  • x-offset x 偏移
  • y-offset y 偏移
  • blur 模糊度
  • color of shadow 阴影的颜色

6. Text

6.1 几个新的 text 属性

  • text-overflow
  • word-wrap
  • word-break

6.2 text-overflow

6.2.1 text-overflow: clip

6.2.2 text-overflow: ellipsis

6.3 word-wrap

6.3.1 word-wrap: break-word

6.3.2 word-break: keep-all

6.3.3 word-break: break-all

7. Web Fonts

7.1 不同的 Font 格式

  • TrueType Fonts (TTF)
  • OpenType Fonts (OTF)
  • The Web Open Font Format (WOFF)
  • The Web Open Font Format (WOFF 2.0)
  • SVG Fonts/Shapes
  • Embedded OpenType Fonts (EOT)

7.2 语法

@font-face {
    font-family: myFirstFont;
    src: url(sansation_light.woff);
}

div {
    font-family: myFirstFont;
}

8. 2D Transforms

  • translate()
  • rotate()
  • scale()
  • skewX()
  • skewY()
  • matrix()

8.1 Translate

div {
    -ms-transform: translate(50px, 100px); /* IE 9 */
    -webkit-transform: translate(50px, 100px); /* Safari */
    transform: translate(50px, 100px);
}

8.2 Rotate

div {
    -ms-transform: rotate(20deg); /* IE 9 */
    -webkit-transform: rotate(20deg); /* Safari */
    transform: rotate(20deg);
}

8.3 Scale

div {
    -ms-transform: scale(2, 3); /* IE 9 */
    -webkit-transform: scale(2, 3); /* Safari */
    transform: scale(2, 3);
}

8.4 skewX

div {
    -ms-transform: skewX(20deg); /* IE 9 */
    -webkit-transform: skewX(20deg); /* Safari */
    transform: skewX(20deg);
}

8.5 skewY

div {
    -ms-transform: skewY(20deg); /* IE 9 */
    -webkit-transform: skewY(20deg); /* Safari */
    transform: skewY(20deg);
}

8.6 skew

div {
    -ms-transform: skew(20deg, 10deg); /* IE 9 */
    -webkit-transform: skew(20deg, 10deg); /* Safari */
    transform: skew(20deg, 10deg);
}

8.7 matrix

div {
    -ms-transform: matrix(1, -0.3, 0, 1, 0, 0); /* IE 9 */
    -webkit-transform: matrix(1, -0.3, 0, 1, 0, 0); /* Safari */
    transform: matrix(1, -0.3, 0, 1, 0, 0);
}

语法

matrix(scaleX(),skewY(),skewX(),scaleY(),translateX(),translateY())

9. 3D Transforms

9.1 兼容性

IE 10

9.2 rotateX

div {
    -webkit-transform: rotateX(150deg); /* Safari */
    transform: rotateX(150deg);
}

9.3 rotateY

div {
    -webkit-transform: rotateY(130deg); /* Safari */
    transform: rotateY(130deg);
}

9.4 rotateZ

div {
    -webkit-transform: rotateZ(90deg); /* Safari */
    transform: rotateZ(90deg);
}

10. Transitions

div {
    -webkit-transition: width 2s, height 4s; /* Safari */
    transition: width 2s, height 4s;
}

11. Animations

div {
    width: 100px;
    height: 100px;
    position: relative;
    background-color: red;
    animation-name: example;
    animation-duration: 4s;
    animation-iteration-count: 3;
    animation-direction: alternate;
}
属性 描述
@keyframes 存放动画代码
animation 简写
animation-delay 指定 delay
animation-direction 指定反方向还是循环
animation-fill-mode 停止播放的时候,停在哪里
animation-iteration-count 指定动画需要播放的次数
animation-name @keyframes 的名字
animation-play-state 指定是播放还是暂停
animation-timing-function 指定速度曲线

参考

CSS3 Introduction

results matching ""

    No results matching ""