CSS3---渲染属性

    1.计数器

  CSS3计数器( CSS Counters )可以允许我们使用css对页面中的任意元素进行计数,实现类似于有序列表的功能。与有序列表相比,它的突出特性在于可以对任意元素计数,同时实现个性化计数。

  1>语法
     counter-reset: [ <identifier> <integer>? ]+ | none | inherit
    含义:用来定义计数器的初值和作用域,默认值为none。 
      <identifier> :计数器名称
      <integer>     :计数器的初始值
     当元素display为none时,该属性失效。

  2>语法
     counter-increment: [<user-ident> <integer>?]+ | none 
    含义:用来增数计数器,默认值为none(阻止计数器增加)。 
      <user-ident> :需要增数的计数器名称
      <integer>     :计数器增数的值,可以为负值。
    我们可以同时增数多个计数器。当元素display为none时,该属性失效。

3>语法
   content: [<counter>]+<counter> = counter(name) |  counter(name,list-style-type) |  counters(name,string) |   counters(name,string,list-style-type) 
  含义:使用计数器,需要结合::before和::after使用。可以同时使用多个计数器。

  4>语法格式
     @counter-style counterStyleName{
        system : 算法;
        range : 使用范围;
        symbols : 符号; or additive-symbols: 符号;
        prefix : 前缀;

        suffix : 后缀;
        pad : 补零(eg. 01,02,03);
        negative: 负数策略;
        fallback: 出错后的默认值;
        speakas : 语音策略;

      }

  自定义counter style示例
     @counter-style cjk-heavenly-stem {
        system: alphabetic;
        symbols: "\7532" "\4E59" "\4E19" "\4E01" "\620A" "\5DF1" "\5E9A" "\8F9B" "\58EC" "\7678";
         /* 甲 乙 丙 丁 戊 己 庚 辛 壬 癸 */
        suffix: "、";
     }

2.形状研究shape

  CSS3形状( CSS3 Shape )描述CSS中几何图形的使用,对于level 1(候选标准)来说,可以使用形状属性改变形状旁内容流布局。

  1>语法
   shape-outside:  none | [ <basic-shape> || <shape-box> ] | <image>
  含义 :使用形状改变旁边内容的布局流,默认值为none。 
   <basic-shape>:使用基本shapes函数绘制形状
   <shape-box>  :利用盒模型得到形状
   <image>        :从外部图像中获取形状
   注意,只适用于浮动元素。

  2>语法(绘制基本形状)
   inset() = inset( <shape-arg>{1,4} [round <border-radius>]? )
   含义:绘制矩形。 
   inset可以接受1-4个参数,类似于margin四个值的指定(上右下左的顺序)。
   border-radius为可选参数,定义矩形的圆角。

  运用:shape-outside:inset(50px)绘制矩形

     shape-outside:inset(50px round 20px)圆角矩形

  3>语法(绘制基本形状)
   circle() = circle( [<shape-radius>]? [at <position>]? )
    含义:绘制圆形。 默认为一个圆心在元素中心的的圆。
   shape-radius为可选参数,代表圆的半径。 可以为数字、百分比,不可为负数。还可以为closest-side(近端)、farthest-side(远端)两个关键字。
   position为可选参数,代表圆心位置。

  4>语法(绘制基本形状)
   ellipse() = ellipse( [<shape-radius>{2}]? [at <position>]? )
  含义:绘制椭圆形。 默认为一个圆心在元素中心的的圆。
   shape-radius为可选参数,两个值分别代表x轴、y轴半径。 可以为数字、百分比,不可为负数。 还可以为closest-side(近端)、farthest-side(远端)两个关键字。
   position为可选参数,代表圆心位置。

  5>语法(绘制基本形状)
   polygon() = polygon( [<fill-rule>,]? [<shape-arg> <shape-arg>]# )
   含义: 绘制多边形。
   fill-rule为可选参数,代表多边形的填充规则。可以接受nonzero、evenodd作为参数。
    shape-arg代表多边形顶点坐标,每一对表示一个点,至少需要三个点。

  使用形状编辑器(shape edit)辅助绘制形状。
  CSS Shapes Editor for Chrome--Chrome浏览器插件
  CSS Shapes Editor for Brackets—Brackets编辑器插件
  Standalone CSS Shapes Editor—独立形状编辑器

  6>语法(通过盒模型改变形状)
   <shape-box> = <box> | margin-box
   <box> = border-box | padding-box | content-box
   含义:利用盒模型得到形状。

  7>从外部图像中得到形状

  使用外部图像得到形状,需要图像具有一个alpha通道
  图像中alpha超过阈值的像素将会被用来定义形状
  阈值由shape-image-threshold属性指定,默认值为0

  8>语法
   shape-margin: <length> | <percentage>
   含义:为shape-outside指定margin值,默认值为0. 
   <length>       :使用数字表示margin值
   <percentage>:使用元素块容器的百分比表示margin值

  浏览器兼容性问题:兼容情况不好,使用polyfill解决。

3.CSS3混合模式详解

  CSS3混合模式详解 (  CSS Blend Modes  )是CSS3新增的一个魔法特性,可以允许多个背景或多个元素进行混合,类似于Photoshop的图层混合模式。

  1>语法
      background-blend-mode : <blend-mode>
    含义:设置多背景之间的混合模式,背景色、背景图像、渐变背景之间的混合模式。
     <blend-mode>可以接受16个取值,分别为:normal | multiply | screen | overlay | darken | lighten | color-dodge |color-burn | hard-light | soft-light | difference | exclusion | hue | saturation | color | luminosity等

  2>语法
     mix-blend-mode:<blend-mode>
    含义:设置多元素之间的混合模式。 html元素之间、html与svg元素之间均可以。

  3>语法
     isolation:auto | isolate
    含义:设置元素的隔离模式。

4.CSS3裁剪与遮罩解析

  CSS3裁剪与遮罩(Clipping and Masking)用来隐藏元素的一部分而显示另一部分,裁剪使用路径、遮罩使用图像来控制元素的显示。

  1>语法
     clip: auto | rect(top, right, bottom, left)
   含义:设置绝对定位元素的裁剪,为不建议使用的属性,auto值为默认值。 
    自对象左上角为(0,0) 计算的四个偏移数值。如果为auto,则此边不剪切。

  2>语法
     clip-path: <clip-source> | [ <basic-shape> || <geometry-box> ] | none
    含义: 使用基础形状或引用clipPath元素裁剪元素, none值为默认值。

  3>CSS3裁剪与遮罩解析 — 引用svg定义的<clipPath>元素裁剪元素

  4>语法
     -webkit-background-clip: text;
    含义:使用文本裁剪背景图像。
    目前只支持webkit内核浏览器,使用polyfill解决问题。

  5>语法
     mask-image: none | <image> | <mask-source> 
    含义:设置元素的遮罩图像, none值为默认值。

  6>语法
     mask-mode: alpha | luminance | auto 
    含义:设置遮罩的模式, auto为默认值。

  7>语法
     mask-repeat: repeat-x | repeat-y | [repeat | space | round | no-repeat]{1,2}
    含义:设置遮罩的重复模式, no-repeat为默认值。

  8>语法
     mask-position: <position> [ , <position> ]*
     <position> = [ left | center | right | top | bottom | <percentage> | <length> ]
    含义:设置遮罩的位置模式, center为默认值。

  9>语法
     mask-clip: <geometry-box> | no-clip
     <geometry-box> = <shape-box> | fill | stroke | view-box
     <shape-box> = margin-box | border-box | padding-box | content-box
    含义:设置遮罩的影响区域, border-box为默认值。

  10>语法
     mask-origin: <geometry-box> 
     <geometry-box> = <shape-box> | fill | stroke | view-box
     <shape-box> = margin-box | border-box | padding-box | content-box
    含义:设置计算mask-position时的参考原点位置, border-box为默认值。

  11>语法
     mask-composite:  <compositing-operator>#
      <compositing-operator > = add | subtract | intersect | exclude
    含义:设置当前遮罩图层与下面图层的结合方式。 分别为添加、减去、交叉、排除 等同于svg里的source-over、source-out、source-in、XOR。

  12>语法
     mask: <mask-reference> <masking-mode>? || <position> [ / <bg-size> ]? ||<repeat-style> || <geometry-box> || [ <geometry-box> | no-clip ]     || <compositing-operator>
    含义:设置遮罩的复合属性。 一个< geometry-box >值将会同时设置mask-origin和mask-licp,如果有两个值则分别代表mask-origin和mask-clip。
 mask-repeat、mask-postion、mask-clip、mask-origin、mask-size对<mask>element无效

  13>语法
     mask-border-source: none | <image> 
    含义:设置边框遮罩的图像,none为默认值。 类似于border-image-source。

  14>语法
     mask-border-mode: luminance | alpha 
    含义:设置边框遮罩的模式,alpha为默认值。类似于mask-mode。

  15>语法
     mask-border-slice: [<number> | <percentage>]{1,4} fill?
    含义:设置边框遮罩的切割方式,0为默认值。 类似于border-image-slice。  该属性指定从上,右,下,左方位来分隔图像,将图像分成4个角,4条边和中间区域共9份,中间区域始终是透明的(即没填充),除非加上关键字 fill。

  16>语法
     mask-border-width: [ <length> | <percentage> | <number> | auto ]{1,4}
    含义:设置边框遮罩的厚度,auto为默认值。类似于border-image-width。

  17>语法
     mask-border-outset: [ <length> | <number> ]{1,4}
    含义:设置边框遮罩的扩展,0为默认值。类似于border-image-outset。

  18>语法
     
mask-border-repeat: [ stretch | repeat | round | space ]{1,2}
    含义:设置边框遮罩的重复方式, stretch为默认值。 类似于border-image-repeat。

  19> 语法
     mask-border: <‘ mask-border-source ‘> || <‘ mask-border-slice ‘> [ / <‘ mask-border-width ‘> | / <‘ mask-border-width ‘>? / <‘ mask-border-outset ‘> ]? || <‘ mask-border-repeat ‘>
    含义:设置边框遮罩的复合属性,类似于border-image。

5.滤镜详解:

  CSS3滤镜(CSS3 Filters)是CSS3的新增的一个魔法属性,可以对网页元素添加神奇图像处理效果,类似Photoshop里面的滤镜。滤镜可以实现图像、背景、边框的模糊、颜色调整,语法与IE的filter截然不同。

  1>语法
      .filter-element { filter: none | <filter-function-list> }
     <filter-function-list> = [ <filter-function> | <url> ]+<filter-function> = <blur()> | <brightness()> | <contrast()> | <drop-shadow()>| <grayscale()> | <hue-rotate()> |<invert()> | <opacity()> | <sepia()> | <saturate()>
    含义:设置元素的滤镜效果。

时间: 2024-08-01 17:34:38

CSS3---渲染属性的相关文章

CSS3基础(4)——CSS3 渲染属性

一. CSS3 计数器详解    CSS3计数器(CSS Counters)可以允许我们使用CSS对页面中的任意元素进行计数,实现类似于有序列表的功能. 与有序列表相比,它的突出特性在于可以对任意元素计数,同时实现个性化计数. 1.CSS3计数器属性一览表 属性 描述 counter-reset 定义计算器,包括初始值.作用域等 counter-increment 设置计数器的增数 content 在::before和::after中生成内容 counter 在content属性中使用,用来调用

让IE浏览器支持CSS3圆角属性的方法

如果要想在IE浏览器中实现圆角的效果,我们一般都会采用圆角图片的方式.用图片的话,基本就跟浏览器没有多大关系了,因为任何浏览器都支持这种方式.今天我们主要是讲解如果用CSS3样式表来实现圆角效果,值得注意的是,IE6/7/8这三个IE浏览器版本都不支持CSS3的解析,只有还不太主流的IE9支持CSS3和HTML5的标准.让IE支持CSS3的解析方法有很多种,(HTML5 Shiv – 让该死的IE系列支持HTML5吧)下面介绍一种实用的让IE支持CSS3解析的方法——IE利用VML矢量可标记语言

CSS3 常用属性(三)-- 用户界面、文字、两种盒模型

用户界面--column 关于用户界面,我们先了解一下在块元素中写文字时,浏览器中的呈现情况,这个其实很明显,所有的文本内容会在块元素内从左到右一个个字排列,排满后,从上到下一排排渲染--然而,有些时候,页面需求的呈现方式是,类似于报纸似得,将一段文本内容,分成多列布局显示. 用户界面使用的示例如下: .font{ width:300px; height:300px; border:1px solid #000; margin:0px auto; column-count:3; /* 定义数量

CSS3新属性:在网站中使用访客电脑里没有安装的字体

CSS的font-family属性使网页可以使用客户电脑里的字体,从而得到多姿多彩的WEB页面,但当客户端没有你想要使用的字体时怎么办呢?我们总不能让每个访问者都去安装一个字体吧?事实上,这是可以的!不过不是访客主动下载的,而是网站开发者帮访客下载安装的,具体怎么实现的,我们还要从字体文件的格式说起.字体格式类型主要有几个大分类:TrueType.Embedded Open Type .OpenType.WOFF .SVG.  TrueType Windows和Mac系统最常用的字体格式,其最大

CSS3 圆角属性 border-radius

在 CSS3 中新增了一个 border-radius 边框半径属性,即大家常用的圆角效果.这使得制作圆角将不再麻烦,只需对所用对象加一个 border-radius 属性即可,不必使用图片定位或冗余代码完成了.不过它的使用瓶颈目前也是显而易见的,因为效果显示需支持 CSS3 的现代浏览器,而在一些老版本浏览器上则无法显示,如IE8及以下浏览器就不行. CSS3 圆角属性 border-radius 使用方法: 同时设置四个圆角只需给出一个值即可:border-radius: 10px; 也可以

CSS3变形属性

CSS3变形CSS2.1中的页面都是静态的,网页设计师也习惯把它作为页面效果的设计工具.多年来,Web设计师依赖于图片.Flash或 JavaScript才能完成修改页面的外观. CSS3将改变设计师这种思维,借助CSS3可以轻松倾斜.缩放.移动以及翻转元素.2012年9月,W3C组织发布了CSS3变形工作草案.允许CSS把元素转变为2D或3D空间,这个草案包括了CSS32D变形和CSS33D变形.CSS3变形是一些效果的集合, 比如平移.旋转.缩放和倾斜效果,每个效果都称为变形函数( Tran

如何使用 css3 transform 属性来变换背景图?

本文和大家分享的主要是使用 css3 transform 属性来变换背景图相关内容,一起来看看吧,希望对大家学习css3有所帮助. 使用 css3 transform 属性可以轻易的旋转,倾斜,缩放任何元素.目前即使没有任何前缀也可以在绝大部分浏览器上很好的使用 . 如果你要在黑莓浏览器或者 UC 浏览器使用这个属性, 你需要加 -webkit- 前缀. #myelement { -webkit-transform: rotate(30deg); transform: rotate(30deg)

两点补充——CSS3新属性以及弹性布局

CSS3 新属性 一.[ CSS3新增属性前缀 ] 1.-webkit-:chrome/safari 2.-moz-:火狐 3.-mo-:IE 4.-o-: Opera 欧朋 二 .[CSS 长度单位] 1.px:像素.长度固定,表示分辨率占几个像素点: 2.%:表示相对于默认值的百分比: 3.em:长度与元素的字号挂钩. rem:长度与根元素的字号挂钩. 即与html 的 font-size 挂钩,若不设置,默认16px . [ em与rem区别 ] em与当前元素自身的font-size挂钩

CSS3 Transform属性详解

今天我们一起来学习有关于CSS3制作动画的几个属性:变形(transform).转换(transition)和动画(animation)等更高级的CSS3技术.本文主要介绍的是这三个属性之中的第一个──变形transform. Transform字面上就是变形,改变的意思.在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放scale和移动translate以及矩阵变形matrix.下面我们一起来看看CSS3中transform的旋转rotate.扭曲skew.缩

css学习笔记——CSS3 transition 属性

<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>CSS3 transition 属性</title> <style> .box{ width:100px; height:100px; background:red; -web