从零开始学习前端开发 — 17、CSS3背景与渐变
一、css3背景切割: background-clip:border-box|padding-box|content-box;
作用: 用来设置背景的可见区域
a) border-box 默认值,背景在边框及边框以内的区域可见
b) padding-box 背景在padding及padding以内的区域可见
c) content-box 背景在content区域可见
二、背景原点: background-origin:padding-box|border-box|content-box;
作用:background-origin用来设置背景图像的定位区域
a) padding-box 默认值,背景原点在padding区域
b) border-box 背景原点在border区域
c) content-box 背景原点在content区域
三、背景切割&背景原点:background-clip和background-origin结合使用
background-origin:content-box;
background-clip:padding-box;
背景原点在content区域,背景在padding以内的区域可见
四、背景图尺寸:background-size:值;
1) length
可以设置背景图的宽度和高度,第一个值代表宽度,第二个值代表高度,如果省略第二个值,默认为auto,等比例缩放
eg: background-size:500px 300px; (背景图有可能会发生变形)
background-size:500px; (背景图等比例缩放)
2) 百分比
可以以父元素容器的百分比来设置背景图的尺寸,第一个值代表宽度,第二个值代表高度,如果省略第二个值,默认为auto
eg: background-size:100% 100%; (背景图有可能会发生变形)
3) cover
把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。背景图像有可能超出容器,背景图像不会发生变形
4) contain
把图像扩展至最大尺寸,以使宽度和高度 完全适应内容区域。背景图像始终被包含在容器内,
背景图不会发生变形
五、设置透明背景: background:rgba(r,g,b,a); a代表透明度
eg: background:rgba(0,0,0,.4);
注:rgba和opacity的区别:
设置rgba背景带有一定的透明度,容器中的文字和图片不会跟随透明
设置opacity是给整个容器添加一定的透明度,文字和图片也会透明
六、颜色模式: background:hsla(h,s,l,a);
h: 色调,取值范围0~360
s: 饱和度,取值范围 0%~100%
l: 亮度,取值范围0%~100%
a: 透明度,取值范围0~1
七、线性渐变: background:linear-gradient(方向,颜色值 位置,颜色值 位置);
eg: background:linear-gradient(to right,red 0%,yellow 30%,green 35%);
注:重复线性渐变
eg: background:repeating-linear-gradient(red 0%,yellow 10%,green 20%);
设置重复线性渐变时,一定要自定义线性渐变的位置
八、径向渐变: background:-webkit-radial-gradient(中心点位置,形状 渐变半径,颜色 位置,颜色 位置);
eg: background:-webkit-radial-gradient(10% 80%,circle closest-corner,red 0%,yellow 15%,green 25%);
注:渐变半径可选参数值:
a) closest-corner 圆心到离圆心最近的角
b) closest-side 圆心到离圆心最近的边
c) farthest-corner 圆心到离圆心最远的角
d) farthest-side 圆心到离圆心最远的边
注:重复径向渐变
eg: background:-webkit-repeating-radial-gradient(red 0%,yellow 5%,green 10%);
扩展:
1.添加蒙版
语法:-webkit-mask-image:url(蒙版图片路径)|使用渐变作为蒙版;
-webkit-mask-repeat:no-repeat|repeat-x|repeat-y|repeat;
-webkit-mask-position:left center;
2.设置背景可视区域为文字区域
语法: -webkit-background-clip:text;
注:设置此属性,文字颜色需要设置为透明(即color:transparent)
3.倒影:-webkit-box-reflect:倒影方向 偏移量 倒影渐变;
a) 倒影方向 left|right|above(上)|below(下)
b) 偏移量
从零开始学习前端开发 — 17、CSS3背景与渐变的更多相关文章
- 从零开始学习前端开发 — 11、CSS3选择器
一.基本选择器 1.* 通配符(通用选择器) 2.id选择器 3.class选择器(类选择器) 4.标签选择器(元素选择符) 5.群组选择器 (选择符1,选择符2{...}) 二.层次选择器(关系选择 ...
- 从零开始学习前端开发 — 16、CSS3圆角与阴影
一.css3圆角: border-radius:数值+单位; 1.设置一个值:border-radius:20px; 四个方向圆角都为20px(水平半径和垂直半径相等) 2.设置两个值 border- ...
- 从零开始学习前端开发 — 15、CSS3过渡、动画
一.css3过渡 语法: transition: 过渡属性 过渡时间 延迟时间 过渡方式; 1.过渡属性(transition-property) 取值:all 所有发生变化的css属性都添加过渡 e ...
- 从零开始学习前端开发 — 14、CSS3变形基础
一.css3变形: transform:rotate(旋转)|scale(缩放)|skew(倾斜)|translate(位移); 注:当多种变形方式综合在一起时,用空格隔开 1.旋转 a) rotat ...
- 从零开始学习前端开发 — 12、CSS3弹性布局
一.分栏布局 1.设置栏数column-count:数值; 2.设置每栏的宽度column-width:数值+单位; 注:当设置了column-width,column-count会失效,二者设置其一 ...
- 从零开始学习前端开发 — 2、CSS基础
一.CSS简介 1.CSS是什么 CSS是Cascading Style Sheets的简称,中文称为层叠样式表.特点:实现了表现与结构相分离 2.css基础语法 css是由选择符和声明两大部分组成 ...
- 从零开始学习前端开发 — 3、CSS盒模型
★ css盒模型是css的基石,每个html标签都可以看作是一个盒模型. css盒模型是由内容(content),补白或填充(padding),边框(border),外边距(margin)四部分组成 ...
- 从零开始学习前端开发 — 18、BFC
一. BFC的概念 BFC--block formating context的缩写,中文译为"块级格式化上下文" 二.如何触发BFC 1.设置float除none以外的值(left ...
- 从零开始学习前端开发 — 10、HTML5新标签及表单控件属性和属性值
一.html5新增标签 1.结构性标签 header 定义网页的头部 nav 定义网页的导航 footer 定义网页的底部 section 定义网页的某个区域 article 定义网页中的一篇文章 a ...
随机推荐
- My Go Resolutions for 2017(from Russ cox's blog)
我的2017年Go决议 一年之季始于春,我认为写一些今年我希望在Go上做的东西是有意义的. 我每年的目标是帮助Go开发人员.我想确保我们在Go团队中所做的工作对Go开发者有重大的积极影响.可能听起来很 ...
- Linux(CentOS6.5)下编译安装Nginx官方最新稳定版(nginx-1.10.0)
注:此文已经更新为新版:http://comexchan.cnblogs.com/p/5815753.html ,请直接查看新版,谢谢! 本文地址http://comexchan.cnblogs.co ...
- Java_Date_01_判断两个时间相差的天数
二.参考资料 1.java 判断两个时间相差的天数 2.java计算两个日期之间相差天数和相隔天数详解
- 轻量级quill富文本编辑器
因为公司产品需要在移动端编辑文本,所以发现了这个轻量级的好东西,网上也没找到比较好的案例,就自己总结了下,有兴趣的直接复制代码运行看看就知道啦! 下面是quill.js的CDN加速地址: <!- ...
- thinkinginjava学习笔记06_复用类
MarsEdit粘代码好麻烦,所有代码交给github:https://github.com/lozybean/MyJavaLearning 复用一个类常用的两种方式:组合.继承: 组合 将对象引用置 ...
- rpy2安装使用中的问题
rpy2是python中的R语言接口模块,今天捣鼓了一个下午,终于把rpy2搞定,记录一下安装过程中需要注意的问题: 1. R编译的过程中,必须选择--enable-R-shlib 选项,将R编译成l ...
- Lucene.net(4.8.0) 学习问题记录三: 索引的创建 IndexWriter 和索引速度的优化
前言:目前自己在做使用Lucene.net和PanGu分词实现全文检索的工作,不过自己是把别人做好的项目进行迁移.因为项目整体要迁移到ASP.NET Core 2.0版本,而Lucene使用的版本是3 ...
- Python爬虫——城市公交、地铁站点和线路数据采集
本篇博文为博主原创,转载请注明. 城市公交.地铁数据反映了城市的公共交通,研究该数据可以挖掘城市的交通结构.路网规划.公交选址等.但是,这类数据往往掌握在特定部门中,很难获取.互联网地图上有大量的信息 ...
- 第一篇:Win10系统搭建Python+Django+Nginx+MySQL 开发环境详解(完美版)
Win10+Python+Django+Nginx+MySQL 开发环境搭建详解 PaulTsao 说明:本文由作者原创,仅供内部参考学习与交流,转载引用请注明出处,用于商业目的请联系作者本人. Wi ...
- [Spark内核] 第33课:Spark Executor内幕彻底解密:Executor工作原理图、ExecutorBackend注册源码解密、Executor实例化内幕、Executor具体工作内幕
本課主題 Spark Executor 工作原理图 ExecutorBackend 注册源码鉴赏和 Executor 实例化内幕 Executor 具体是如何工作的 [引言部份:你希望读者看完这篇博客 ...