第十四章:使用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 ...
随机推荐
- NIO和IO(转)
java NIO由以下几个核心部分组成: Channels(通道) Buffers(缓冲区) Selectors(选择器) 其他 Channel和Buffer: 所有的IO再NIO中都从一个Chann ...
- Oracle Day 08 游标与例外的总结
1.游标的使用(cursor) 基本格式: 定义游标: cursor 游标名 is select语句; 打开游标: open 游标名; loop(循环) fetch ... into ...; ...
- Linux之top
简介 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按 ...
- android从assets读取文件的方法
因为开发需要,经常要从工程的assets文件夹里面读取文件,现在贴一个方法以作记录: private void getFromAssets(String fileName, ArrayList< ...
- Android中使用OKHttp上传图片,从相机和相册中获取图片并剪切
效果:注意:1:网络权限<;;;); intent.putExtra(); ); intent.putExtra(); intent.putExtra(, byteArrayOutputStre ...
- 关于C++中的重定位
"标准库定义了4个IO对象,处理输入时使用命名为cin的istream类型对象,这个对象也成为标准输入.处理输出时使用命名为cout的ostream类型对象,这个对象也称为标准输出.标准库还 ...
- Microsoft Visual Studio 2012正式版官方下载
Microsoft Visual Studio 2012正式版官方下载 首先声明,看到园子里还没有类似的新闻,所以斗胆发首页,如有不妥之处,请移除并谅解. 虽然之前已经又用到泄露的MSDN正式版,但今 ...
- POJ 2068 Nim#双人dp博弈
http://poj.org/problem?id=2068 #include<iostream> #include<cstdio> #include<cstring&g ...
- AnimatorController动画融合树
通过Unity动画状态机,能帮我们轻松处理转换各个动画片断,达到想要的效果,但是如果仅仅是一个个动画的硬生生的切换,那么看起来就非常突然,而不真实了,在质量要求比较高的游戏中,特别是动作游戏,我们就不 ...
- Nimbus<三>Storm源码分析--Nimbus启动过程
Nimbus server, 首先从启动命令开始, 同样是使用storm命令"storm nimbus”来启动看下源码, 此处和上面client不同, jvmtype="-serv ...