03、CSS3-UI样式

一、圆角

  • border-radius: 圆角
 - border-radius: 10px;  即四个边角都一样
 - border-radius: 10px 20px;  对角即左上&右下    右上&左下
 - border-radius: 10px 20px 30px; 即左上、 右上&右下 、左下
 - border-radius: 10px 20px 30px 40px;  即左上角开始,顺时针(左上、右上、右下、左下)

  备注: 
    正方形设置成圆形 border-radius: width/2; 【border-radius: 50%;  】
    矩形设置成椭圆 border-radius: (width/2) / (height/2);

二、线性渐变

  • linear-gradient线性渐变
  语法: 
    linear-gradient([<起点> || <角度>,]? <点>, <点>…)
  参数:
    起点: 从什么方向开始渐变(默认top)left/right/top/bottom
    角度: 从什么角度开始渐变(xxxdeg)
    点: 渐变点的颜色和位置(black 50%,位置可选)

  background: linear-gradient(red, blue);
  background: linear-gradient(left top, red, blue);  // 左上角开始
  background: linear-gradient(30deg, red, blue);  // 起点为0,逆时针30度
  background: linear-gradient(30deg, red, blue, yellow);  // 后续添加多个颜色点
  background: linear-gradient(30deg, red 10px, blue 40px, yellow 80px, purple 140px, pink 200px, black 260px, gray 300px, red 360px);  // 颜色具体的位置点
background: linear-gradient(30deg, red 0, black 30%, blue 60%);  // 位置的百分比

浏览器的内核,主要有 Mozilla(Firefox,Flock等)、WebKit(Safari、Chrome等)、Opera(Opera浏览器)、Trident(万恶的IE浏览器)
background: -webkit-linear-gradient(left top, red, blue); // Mozilla
background: -moz-linear-gradient(left top, red, blue); // WebKit
background: -ms-linear-gradient(left top, red, blue); // Trident
background: -o-linear-gradient(left top, red, blue); // Opera
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#ff0000',GradientType='1'); // IE低版本通过滤镜来处理,而且也只能是线性渐变(GradientType方向: 0从上到下,1从左到右)
background: -o-linear-gradient(left top, red, blue); // Opera
*** background: linear-gradient(30deg, red, blue); 【标准的语法1】***
*** background: linear-gradient( to left, red, blue); 【标准的语法2】***

  • repeating-linear-gradient重复线性渐变
  // 以0~40px渐变样式,进行平铺
  background: repeating-linear-gradient(30deg, red 0, black 40px);

案例: 进度条

三、径向渐变

  • radial-gradient 径向渐变
  语法: 
    radial-gradient([<起点>]? [<形状> || <大小>]? <点>, <点>…);
  参数: 
     起点: 可以是关键字(left,top,right,bottom),具体数值或百分比
     形状: ellipse(圆形)、circle(椭圆形)
     大小: 具体数值或百分比,也可以是关键字
          半径为从圆心到最近端closest-side
          半径为从圆心到最近角closest-corner
          半径为从圆心到最远端farthest-side
          半径为从圆心到最远角farthest-corner
          包含contain
          覆盖cover

  background: -webkit-radial-gradient(red, blue);
  background: -webkit-radial-gradient(100px 50px, circle ,red, blue);
  background: -webkit-radial-gradient(100px 50px, circle closest-side,red, blue);
  background: -webkit-radial-gradient(100px 50px, 50px 20px,red, blue);

四、背景

  • 多背景
  // 用逗号隔开
  background: url(qq.png) no-repeat 10px 30px, url(bt.png) no-repeat right top ;
  • 背景尺寸
  语法: background-size:x y

  background-size: 100% 100%;  // 背景和盒子大小一致
  background-size: 30px 30px;
  background-size:40px 40px, 20px 20px;  // 对多张背景大小进行设置
  • 背景原点
  语法: 
    background-origin: border-box/padding-box/content-box
    - border-box: 从border区域开始显示背景
    - padding-box: 从padding区域开始显示背景
    - content-box: 从content区域开始显示背景
  • 背景剪切
  语法:   
    background-clip: border-box/padding-box/content-box/no-clip
    - border-box: 从border区域向外裁剪背景
    - padding-box: 从padding区域向外裁剪背景 
    - content-box: 从content区域向外裁剪背景 
    - no-clip: 从border区域向外裁剪背景

背景以文本内容进行剪切
-webkit-background-clip: text;
color: rgba(0,0,0,0);

五、遮罩

  • -webkit-mask-image: 图片地址
  • -webkit-mask-position: 图片位置
  • -webkit-mask-repeat: 平铺方式
  // 和背景图设置类似
  -webkit-mask: url(mask.png) no-repeat left bottom;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • body{ background:#f5faff; } .demo_con{ width:960px; margi...
    小忆123阅读 4,847评论 0 0
  • 1、属性选择器:id选择器 # 通过id 来选择类名选择器 . 通过类名来选择属性选择器 ...
    Yuann阅读 5,609评论 0 7
  • 1、垂直对齐 如果你用CSS,则你会有困惑:我该怎么垂直对齐容器中的元素?现在,利用CSS3的Transform,...
    kiddings阅读 8,419评论 0 11
  • 话题背景:如今网页展示的姿势是这样的 图片来自:设计之家 炫酷的网页展示,支撑它的正是强大的CSS3,还有什么理由...
    aliensq阅读 6,365评论 0 2
  • 最近事很多,无处宣泄 很悲伤,因为一个触碰点,宣传部早训我5点起床化妆动静大了吵到室友然后被骂了 事情很小,我有点...
    哦琳阅读 1,382评论 0 0

友情链接更多精彩内容