第十四章:使用CSS3进行增强
1.为不支持某些属性的浏览器使用polyfill:如果想弥合较弱的浏览器和较强的浏览器之间的功能差异,可以使用polyfill(通常又称作垫片),通常用js实现。但是有些较弱的浏览器运行JS的速度要慢得多。
2.为元素创建圆角:
(1)为元素创建四个相同的圆角:
.all-corners{
-webkit-border-radius:r
border-radius:r
} 这里的r是圆角半径的值
(2)为元素创建一个圆角:
.one-corner{
-webkit-border-top-left-radius:r
border-top-left-radius:r
} 这里的r是圆角半径的值
创建右上方圆角:用top-right代替top-left
创建右下方圆角:用bottom-right代替top-left
创建左下方圆角:用bottom-left代替top-left
(3)为元素创建椭圆角:
.elliptical-corners{
-webkit-border-radius:x/r
border-radius:x/r
}
这里的x是圆角在水平方向上的半径大小,y是圆角在垂直方向上的半径大小。
(4)创建圆形:
.circle{
-webkit-border-radius:r
border-radius:r
}
这里的r是圆的半径大小。
3.每个主流浏览器都有其自身的前缀:
-webkit-(支持旧版的Android、iOS和Safari)、-moz-(Firefox)、-ms-(IE)、-o-(Opera)应该将前缀放在CSS属性名的前面。
4.为其他元素添加阴影:
使用text-shadow属性可以为元素的文本添加阴影,使用box-shadow属性可以为元素本身添加阴影。box-shadow属性接受六个值:带长度单位的x-offset、带长度单位的y-offset、可选的带长度单位的blur-radius、可选的inset关键字、可选的带长度单位的spread值以及color值。如果不指定blur-radius和spread的值默认为0。
5.为元素添加阴影:
(1)输入-webkit-box-shadow:
(2)分别输入表示:x-offset、y-offset、blur-radius、spread和color的值。
(3)输入box-shadow:重复上一步。
6.创建内阴影:
(1)输入-webkit-box-shadow:
(2)分别输入表示x-offset、y-offset、blur-radius、spread和color的值
(3)在冒号之后输入inset,再输入一个空格
(4)输入box-shadow:重复第(2)步和第(3)步。
7.为元素应用多重阴影:
(1)输入-webkit-box-shadow:
(2)分别输入表示-offset、y-offset、blur-radius、spread和color的值
(3)输入逗号,
(4)对每种属性使用不同的值重复第(2)步
(5)输入box-shadow:再重复第(2)步至第(4)步
8.将box-shadow改回默认值:
(1)输入-webkit-box-shadow:none
(2)输入box-shadow:none
9.应用多重背景:
(1)输入background-color:b这里的b是希望为元素应用的备用背景颜色
(2)输入background-image:u这里的u是绝对或相对路径图像引用的URL列表(用逗号分隔)
(3)输入background-position:p这里的p是成对的x-offset和y-offset
(4)输入background-repeat:r这里的r是repeat、repeat-y或no-repeat值
10.使用渐变背景:
使用CSS创建渐变有两种主要的方式:线性渐变和径向渐变。
创建备用背景颜色:输入background:color这里的color可以是十六进制数、RGB值。
定义线性渐变:
(1)输入background:linear-gradient(
(2)如果你希望渐变的方向是从上往下,则跳过这一步
输入方向后面加一个逗号,这里的方向指的是to top、to right、to left、to bottom right、tobottomleft、to top right 或to top left这样的值。
(3)根据后面讲到的“指定颜色”或“指定颜色和颜色的停止位置”,定义渐变的颜色
(4)输入);完成渐变
定义径向渐变:
(1)输入background:radial-gradient(
(2)指定渐变的形状。如果希望渐变的形状根据下一步中指定的尺寸自行确定,则跳过这一步。否则输入circle或ellispse
(3)指定渐变的尺寸。如果你希望渐变的尺寸为自动指定的值(默认值为farthest-corner,最远的角)则跳过这一步。输入size,这里的size可以是同时代表渐变宽度和高度的一个长度值也可以是代表宽度和高度的一对值。注意:如果只使用一个值,则这个值不能是百分数。输入size,这里的size是closest-side、farthest-side、closest-corner或farthest-corner。
(4)指定渐变的位置。如果你希望渐变从元素中心开始,则跳过这一步。输入pos,这里的pos是at top、at right、at left、atbottom right、at bottom left、at top right、at top left等。
(5)如果指定了第(2)步至第(4)步中的任何一步,输入一个逗号。
(6)根据后面讲到的“指定颜色”或“指定颜色和颜色的停止位置”,定义渐变的颜色。
(7)输入);完成渐变。
11.为元素设置不透明度:
使用opacity属性可以修改元素的不透明度。修改元素不透明度的方法:输入opacity:o这里的o表示元素的不透明度(0.00完全透明~1.00完全不透明之间的两位小数、不带单位)
12.生成内容的效果:
:before和:after伪元素可以与content属性结合使用从而生成内容,生成内容指的是通过CSS创建的内容而不是由HTML生成的。
13.使用sprite拼合图像:
浏览器通常很快就可以将文本显示出来,但图像往往会减慢页面的加载速度。为了解决这一个问题,可以将多个图像拼合成单个背景图像,再通过CSS控制具体显示图像的一部分。
第十四章:使用CSS3进行增强的更多相关文章
- 学习笔记 第十四章 使用CSS3动画
第14章 使用CSS3动画 [学习重点] 设计2D动画 设计3D动画 设计过渡动画 设计帧动画 能够使用CSS3动画功能设计页面特效样式 14.1 设计2D动画 CSS2D Transform表 ...
- CSS3秘笈复习:十三章&十四章&十五章&十六章&十七章
第十三章 1.在使用浮动时,源代码的顺序非常重要.浮动元素的HTML必须处在要包围它的元素的HTML之前. 2.清楚浮动: (1).在外围div的底部添加一个清除元素:clear属性可以防止元素包围浮 ...
- JavaScript高级程序设计:第十四章
第十四章 一.表单的基础知识 在HTML中,表单是由<form>元素来表示的,而在javascript中,表单对应的则是HTMLFormElement类型.HTMLFormElement继 ...
- Gradle 1.12用户指南翻译——第三十四章. JaCoCo 插件
本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...
- 《Linux命令行与shell脚本编程大全》 第十四章 学习笔记
第十四章:呈现数据 理解输入与输出 标准文件描述符 文件描述符 缩写 描述 0 STDIN 标准输入 1 STDOUT 标准输出 2 STDERR 标准错误 1.STDIN 代表标准输入.对于终端界面 ...
- perl 第十四章 Perl5的包和模块
第十四章 Perl5的包和模块 by flamephoenix 一.require函数 1.require函数和子程序库 2.用require指定Perl版本二.包 1.包的定义 2.在包间切 ...
- Gradle 1.12 翻译——第十四章. 教程 - 杂七杂八
有关其它已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或訪问:http://gradledoc.qiniudn.com ...
- C和指针 (pointers on C)——第十四章:预处理器
第十四章 预处理器 我跳过了先进的指针主题的章节. 太多的技巧,太学科不适合今天的我.但我真的读,读懂.假设谁读了私下能够交流一下.有的小技巧还是非常有意思. 预处理器这一章的内容.大家肯定都用过.什 ...
- C#语言和SQL Server第十三 十四章笔记
十三章 使用ADO.NET访问数据库 十四章使用ADO.NET查询和操作数据库 十三章: ...
- 第四章初始CSS3预习笔记
第四章 初始CSS3预习笔记 一: 1: 什么是CSS? 全称是层叠样式表;/通常又称为风格样式表,.他是用来进行网页风格设计的; 2:CSS的优势: 1>内容以表现分离,即使用u前面学习的HT ...
随机推荐
- 为什么重写equals()必须重写hashCode()
主要原因是因为hashCode是用对象的内部地址转换成一个整数的,而equals比较得是两个对象,或者是两个对象的内容 如果你重写了equals,而保留hashCode的实现不变,那么很可能两个对象明 ...
- Xcode好用的插件(随时更新)
古人云"工欲善其事必先利其器",打造一个强大的开发环境,是立即提升自身战斗力的绝佳途径!下面简单介绍下插件是什么.如何使用Xcode插件以及一些常用的Xcode插件的推荐. 一.插 ...
- Java线程池主线程等待子线程执行完成
今天讨论一个入门级的话题, 不然没东西更新对不起空间和域名~~ 工作总往往会遇到异步去执行某段逻辑, 然后先处理其他事情, 处理完后再把那段逻辑的处理结果进行汇总的产景, 这时候就需要使用线程了. 一 ...
- linux下串口通信与管理
linux下的串口与windows有一些区别,下面将介绍一下linux下串口通信管理 查看是否支持USB串口: #lsmod | grep usbserial 如果没有信息:sudo apt-get ...
- 第七十节,css选择器
css选择器 学习要点: 1.选择器总汇 2.基本选择器 3.复合选择器 4.伪元素选择器 本章主要探讨 HTML5中 CSS选择器,通过选择器定位到想要设置样式的元素.目前CSS选择器的版本已经升 ...
- Arrays.toString(a)--->将数组a的值转换为字符串
Arrays.toString(数组)是java内置类Arrays类的一个方法,具体查Api可知.因为数组是不可直接输出的,它的作用是将数组转换为字符串.其实用for循环也是可以做到的,只不过比for ...
- html5权威指南:定制input元素
第十三章:定制Inpur元素,http://www.cnblogs.com/polk6/p/5417921.html#Menu3-New input标签最全面的type属性:http://blog.s ...
- 《JS权威指南学习总结--6.8对象的三个属性》
内容要点: 每一个对象都有与之相关的原型(prototype).类(class)和可扩展性 一.原型属性 1.对象的原型属性是用来继承属性的,这个属性是如此重要,以至于我们经常把 "0的原型 ...
- 【Python】生成器、回溯和八皇后问题
八皇后问题: 把N个皇后,放在N*N的棋盘上面,从第一行往下放,每个皇后占一行,同时,每个皇后不能处在同一列,对角线上,有多少种放置方法. 思路: 典型的回溯问题: 1.当要放置最后一个皇后时候,默认 ...
- JMS理解2
使用JMS 的应用程序被称为JMS 客户端,处理消息路由与传递的消息系统被称为JMS Provider,而JMS 应用则是由多个JMS 客户端和一个JMS Provider 构成的业务系统.发送消息的 ...