css3-聊一聊那些你不知道的样式

新增选择器

  • 兄弟选择器(相邻)

         E + F{}

  • 通用

         E ~ F{}

  • 属性选择器

        [attr]{}
        [attr=value]{}  :一对一匹配
        [attr*=value]{} :含有相同字母
        [attr^=value]{} :特定开头
        [attr$=value]{}:特定结尾 
        [attr~=value]{} (不常用)
        [attr |=value]{}  (不常用)

  • 伪类选择器

       1.动态伪类(聚焦状态
            :focus{}
         
        2.UI状态伪类
             :enabled{}
            : disabled{}
            : checked{}
        3. :nth伪类
            :first-child{} :第一个子元素
            :last-child{} :最后一个子元素
            :nth-child(n){}
                   even 偶数
                   odd 奇数
             同种类型第一个  :first-of-type{}
             同种类型最后一个    :last-of-type{}
             同种类型第n个    :nth-of-type(){}

自定义字体

    @font-face {
          font-family:自定义字体名称;
          src: url(字体路径);}
          选择器{
           font-family:名称;
         }

阴影

    1.文本阴影  :  text-shadow
       四个值:水平方向投影   垂直方向投影   阴影的模糊半径  阴影颜色
    2.边框阴影  : box-shadow
       水平方向投影   垂直方向投影   阴影的模糊半径  阴影扩展半径  阴影颜色
       投影方式默认外投影 (若设置为 inset 为内阴影)

圆角

      1.boder-radius 值;    四个圆角一样;
      2. boder-radius 值1 值2 ;  左上 右下    右上  左下
      3. boder-radius 值1 值2 值3 ;  左上右上 左下右下
      4.boder-radius  4个值 ; 左上   右上  右下  左下

渐变

       1. 线性渐变
             background-image:linear-gradient(渐变方向,颜色1 颜色1位置,颜色2 颜色额2位置,........)
            渐变方向:  角度  数值+单位  (30dge)
            to 英文单词  to left center    to center top
        2.径向渐变
           background-image:radial-gradient(shape size position,颜色1 颜色1位置,颜色2 颜色2位置,...)
          shape渐变形状:
              ellipse  默认 椭圆形
              circle  圆形
          size 渐变大小:
              farthest-corner  渐变半径大小是从圆心到离圆心最远的角   默认
              farthest-side 渐变半径大小是从圆心到离圆心最远的边
              closest-corner 渐变半径大小是从圆心到离圆心最近的角
              closest-side 渐变半径大小是从圆心到离圆心最近的边
         position 渐变圆心位置:
             at x值 y值
             默认 at center center

变换  (transform)

     1. 移动  translate(X,Y)
          translateX(值)水平方向移动
          translateY(值)垂直方向移动
     2.旋转  rotate  角度
          rotateX(数值+deg)x方向旋转
          rotateY(数值+deg)Y方向旋转
          rotateZ(数值+deg)Z方向旋转
     3.   缩放  scale
        scaleX(数值)x方向缩放
        scaleY(数值)Y方向缩放
     4.扭曲  skew
          skewX(数值+deg)水平方向扭曲
          skewY(数值+deg)垂直方向扭曲

  • 变换基点  (transform-origin)

           x值,y值
          默认在中心位置

过度  transition

      1.过度属性   transition-property
            过渡属性名
           多个属性名之间用逗号隔开
           多个属性名时,也可以用all来表示
     2.过度持续时间  transition-duration
          单位秒s或毫秒ms
     3.  过度速度
          transition-timing-function
                ease  默认 逐渐变慢
                linear  匀速
                ease-in 加速
                ease-out   减速
                ease-in-out  先加速后减速
                cubic-bezier(x1,y1,x2,y2)
    4. 过渡延时时间
          transition-delay
         单位秒s或者毫秒ms

自定义动画

  • 关键帧

@keyframes   动画名称{
      from{
        样式属性名 : 属性值;
     }
      to{
       样式属性名 : 属性值;
    }
  }
    或
@keyframes   动画名称{
    0%{
        样式属性名 : 属性值;
    }
    50%{
       样式属性名 : 属性值;
   }
    100%{
        样式属性名 : 属性值;
    }
}

  •  动画

        1. animation-name  动画名称
        2. animation-duration  动画持续时间
        3. animation-timing-function  动画速度
            ease 默认 逐渐变慢
            linear 匀速
            ease-in 加速
            ease-out 减速
            ease-in-out 先加速后减速
            cubic-bezier(x1,y1,x2,y2)
            steps(number) 跃阶函数
        4. animation-delay 动画延迟时间
        5. animation-iteration-count  动画次数
              数字
             infinite  无限次
        6.animation-direction 动画方向
            normal  默认 正向 从开始--->结束
            reverse  反向  从结束--->开始
            alternate  往返  从开始--->结束--->开始
            alternate-reverse  往返  从结束--->开始--->结束

分栏  


    column-width  列宽 栏宽
    column-count  列数 栏数
    column-gap  列间距
    column-rule 列样式
        column-rule-width
        column-rule-style
            solid  实线
            dotted 点状线
            column-rule-color

box-sizing

  •     content-box   标准盒模型
  •     border-box  IE盒模型 怪异模式

弹性布局(display:flex)

  • 容器

        1.主轴的对齐方式
            justify-content:
               flex-start  默认 与主轴的起点对齐 左对齐
               flex-end 右对齐
               center  居中对齐
               space-between  每两个项目之间的距离相等
               space-around 每一行两侧的距离相等
               space-evenly
        2.交叉轴对齐方式
            align-items
               stretch  默认  当项目未设置高度或为auto时,将占满容器高度
               flex-start 与交叉轴的起点对齐 居上对齐
               flex-end  居下对齐
               center  居中对齐
               baseline 与第一行文字基线对齐
        3.主轴方向
            flex-direction
               row 默认 主轴为水平方向 起点在左侧
               row-reverse 主轴为水平方向 起点在右侧
               column 主轴为垂直方向 起点在上侧
               column-reverse 主轴为垂直方向 起点在下侧
        4. 项目换行
             flex-wrap
                nowrap 默认  不换行
                wrap  换行  第一行在上侧
                wrap-reverse 换行 第一行在下侧
        5.多根轴线对齐方式
            align-content
               stretch  默认  当项目未设置高度或为auto时,将占满容器高度
               flex-start  与交叉轴的起点对齐  整体居上
               flex-end  与交叉轴终点对齐 整体居下
               center 整体居中
               space-between 每两行之间的距离相等
               space-around 每一行两侧的距离相等
               space-evenly

  • 项目

        1.order  项目排列顺序
            默认 0
            值越小越靠前
        2.align-self 
            auto 
            flex-start 与交叉轴的起点对齐 居上对齐
            flex-end  居下对齐
            center  居中对齐
            baseline 与第一行文字基线对齐
       3. flex-grow  项目放大比例
              默认为0  
              不能为负
        4. flex-shrink  项目缩小比例
              默认为1
              不能为负  当为0时 不缩小
         5.flex-basis  项目实际大小
              默认 auto

优雅降级和渐进增强

  •  渐进增强 progressive enhancement: 针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。 

  •  优雅降级 graceful degradation: 一开始就构建完整的功能,然后再针对低版本浏览器进行兼容。
     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值