• css3新增加的属性


    (1)渐进增强和优雅降级

       渐进增强:一开始只构建站点最少特性,然后不断的对不同的浏览器追加不同的功能;

       优雅降级:一开始就构造站点的完整功能,然后针对浏览器进行测试和修复;

    (2)新增的一些属性

      1、text-shadow(文字阴影,顺序不能变):5px(水*位置)  5px(垂直位置) 5px(阴影度) #666(颜色);

      2、box-shadow(盒子阴影,顺序不能变):5px(水*位置)  5px(垂直位置) 5px(阴影度)  40px(模糊半径)  #666(颜色);

      3、word-break(允许单词内换行):normal/keep-all/break-all;

      4、word-wrap(单词内不会换行):normal/break-word;

      5、单元格间距:border-spacing

      6、合并相邻单元格边框:border-collapse:separate/collapse;

      7、无内容时单元格的设置:empty-cells:hide/show;

      8、添加组分割线:rules:rows(位于行之间的线条)/cols(位于列之间的线条)/all(全部的线条)/none/group(行组和列组之间的线条);

      9、指定背景的显示范围:background-clip

        background-clip:border-box/padding-box/content-box;

      10、背景图*铺的起点:background-origin

        background-origin:border-box/padding-box/content-box;

      11、背景图的大小:background-size

        background-size:length/percentage/cover/contain

      12、设置圆角:border-radius

      13、用图片来创建边框:border-image

    (3)flex容器属性(添加在父级元素上)

      1、display:flex/inline-flex;设为flex布局以后子元素的float,clear和vertical-align属性将失效;

      2、flex-direction属性:决定主轴的方向(即项目的排列方向)

        flex-direction:row/row-reverse/column/column-reverse

      3、flex-wrap属性:定义子元素是否换行显示

        flex-wrap:nowrap/wrap/wrap-reverse

      4、flex-flow属性:是flex-direction和flex-wrap的简写形式,默认值为row  nowrap;

      5、justify-content属性:定义了项目在主轴上的对齐方式

        justify-content:flex-start/flex-end/center/space-between/space-around

      6、align-items属性:定义项目在交叉轴上的对齐方式

        align-items:flex-start/flex-end/center/baseline/stretch

      7、align-content属性:定义了多根轴线的对齐方式对于单行子元素,该属性不起作用

        align-content:flex-start/flex-end/center/space-between/space-around/stretch

    (4)flex项目属性(添加子元素上)

      1、order属性:定义项目的排列顺序,数值越小,排列越靠前,默认为0;

      2、flex-grow属性:定义项目的放大比例,默认为0,即如果存在剩余空间也不放大,如果所有项目的flex-grow的属性都为1,则它们将等分剩余空间,如果一个项目的flex-grow属性为2,其他项目都为1,则前者占据的剩余空间将比其他多一倍;

      3、flex-shrink属性:定义了项目的缩小比例,默认为1,即如果空间不足,该项目将缩小;如果所有项目的flex-shrink的属性都为1,则它们将等比缩小,如果一个项目的flex-grow属性为0,其他项目都为1,则空间不足时前者缩小;

      4、flex-basis属性:定义了在分配多余空间之间项目占据的主轴空间,浏览器根据这个属性,计算主轴是否有多余的空间,它的默认值为auto,即项目的本来大小;

      5、flex属性:是flex-grow,flex-shrink和flex-basis的简写,默认值为0,1,auto;

      6、align-self属性:align-self:auto/flex-start/flex-end/center/baseline/strectch。

    (5)css3多列布局

      1、column-count:分栏的个数

      2、column-width:分栏的宽度

      3、column-gap:分栏的间距

      4、column-rule:分栏的边框

      5、column-span:all/1;合并分栏,火狐不支持,前面四个加在父元素上,这个属性加在子元素上

    (6)css3选择器

      1、属性选择器(IE6不支持)

        E[attr="value"]:指定属性名,并指定了改属性的属性值;

      2、结构伪类选择器

        a、first-child

        b、last-child

        c、nth-child

        d、nth-last-child

        e、nth-of-style

        f、nth-last-of-style

        g、first-of-type

        h、last-of-type

        i、only-child

        j、empty

      3、否定选择器  :not()   IE6-8不支持  可以让你定位不匹配选择器的元素

      4、选择文档的根元素  :root

      5、:target   选择器可用于选取当前活动的目标元素

      6、:lang   和a标签搭配使用   是你有能力为不同语言定义特殊规则

      7、层次选择器

        a、后代选择器(E F)

        b、子元素选择器(E>F)

        c、相邻兄弟选择器(E+F)紧接着的下一个兄弟才可以

        d、通用兄弟选择器(E~F)

    (7)渐变

      1、background:linear-gradient(to top,blue,red) 兼容写法:background:-wbkit-linear-gradient(bottom,blue,red) 

      2、gradient分为linear-gradient(线性渐变)和radical-gradient(径向渐变),重复的线性渐变:repeat-linear-gradient(),重复的径向渐变repeat-radical-gradient()

      3、radical-gradient( circle,20px 30px,red,blue)中的20px 30px 指的是圆心的水*和垂直位置  linear-gradient(20px 30px,red,blue)中的20px 30px 指的是渐*的水*和垂直半径

      4、线性渐变

        a、从上到下(默认情况下):background:linear-gradient(red,blue);

        b、从左到右:background:linear-gradient(to right,red,blue);

        c、对角:background:linear-gradient(to bottom right,red,blue)

      5、径向渐变

        a、颜色节点均匀分布(默认情况):background:radical-gradient(green,red,blue);

        b、颜色节点不均匀分布:background:radical-gradient(green 15%,red 5%,blue 60%);

        c、设置形状:background:radical-gradient(circle,green,red,blue);

    (8)模糊和倒影

       1、模糊:filter:blur(10px)

        2、倒影(只有webkit内核支持,目前仅在Chrome,Safari,opera浏览器下支持)

        -webkit-box-reflect:below 0 -webkit-linear-gradient(transparent,transparent 50%,rgba(255,255,255,.3));

       3、用线性渐变给图片加遮罩效果;用于遮罩的图片必须是png格式;

    (9)动画(css3属性中有关制作动画的三个属性transition,transform和animation)

      1、transition

        a、transition-property:需要过渡的样式

        b、transition-duration:运动时间

        c、transition-delay:延迟时间

        d、transition-timing-function:运动形式     ease(默认,慢速开始,然后变快,然后慢速)/linear(匀速)/ease-in(快速)/ease-out(减速)/ease-in-out(先加速后减速)/cubic-bezier(x1,y1,x2,y2)贝塞尔曲线

        e、steps:实现一个关键逐帧动画功能

      2、transform属性向元素应用2D,3D效果,该属性允许我们对元素进行旋转,缩放,移动和倾斜

        a、translate()根据x轴和y轴位置给定的参数,从当前位置移动   transform:translate(-150px -150px);

        b、rotate()根据给定度数顺时针旋转,负值是允许,这样会逆时针旋转

        c、scale  默认为(1,1),进行图片缩放,给负值时,会先旋转再缩放

        d、skew  倾斜

        f、transform-origin:改变元素基点位置,当有3个参数时,第三个参数只能是数字+单位,不能用left/center/right

      3、3D涉及到的属性

        a、transfrom-style:指定嵌套元素如何在3D空间中呈现(加在父元素上)

          transform-style:flat(表示所有子元素在2D*面呈现)/perserve-3d(表示所有子元素在3D*面呈现);

        b、perspective:none/<length>;perspective取值为none或不设置,没有真3D空间;perspective取值越小,3D效果越明显;

        c、perspective-origin:决定看东西的角度

        d、backface-visibility:visible/hidden;决定背面是否可见

      4、animation和@ikeyframes一起用,支持animation动画的只有webkit内核 

        a、animation-property:需要过渡的样式

        b、animation-duration:运动时间

        c、animation-delay:延迟时间

        d、animation-timing-function:运动形式     ease(默认,慢速开始,然后变快,然后慢速)/linear(匀速)/ease-in(快速)/ease-out(减速)/ease-in-out(先加速后减速)/cubic-bezier(x1,y1,x2,y2)贝塞尔曲线

        e、animation-iteration-count:循环次数

        f、animation-direction(运行方向):normal/alternate;

        g、animation-play-state:paused;鼠标放上去动画停止

        h、animation-fill-mode:backwards(默认)/forwards(停在最后一帧);动画结束之后的样子

          

        

        

     

        

  • 相关阅读:
    影子的宽度&&盒子的个数
    【NOIP2017】【洛谷3958】奶酪cheese(并查集)(dfs)
    【USACO Jan 2011】【洛谷P3008】道路和航线 Roads and Planes
    增肥计划
    【洛谷1379】八数码
    【洛谷1985】【USACO07OPEN】翻转棋
    【NOI1995】极值问题
    车的放置
    【AtCoder
    Design Tutorial: Inverse the Problem
  • 原文地址:https://www.cnblogs.com/niuxiaoxian/p/8476012.html
Copyright © 2020-2023  润新知