后端码农谈前端(CSS篇)第五课:CSS样式
一、背景:
CSS 允许应用纯色作为背景,也允许使用背景图像创建相当复杂的效果。
1、背景色
可以使用 background-color 属性为元素设置背景色。这个属性接受任何合法的颜色值。
例如:
p {background-color: gray;}
2、背景图像
要把图像放入背景,需要使用 background-image 属性。background-image 属性的默认值是 none,表示背景上没有放置任何图像。如果需要设置一个背景图像,必须为这个属性设置一个 URL 值:
body {background-image: url(/i/eg_bg_04.gif);}
3、背景图像重复
如果需要在页面上对背景图像进行平铺,可以使用 background-repeat 属性。
属性值 repeat 导致图像在水平垂直方向上都平铺,就像以往背景图像的通常做法一样。repeat-x 和 repeat-y 分别导致图像只在水平或垂直方向上重复,no-repeat 则不允许图像在任何方向上平铺。
默认地,背景图像将从一个元素的左上角开始。请看下面的例子:
body
{
background-image: url(/i/eg_bg_03.gif);
background-repeat: repeat-y;
}
4、背景图像定位
可以利用 background-position 属性改变图像在背景中的位置。
下面的例子在 body 元素中将一个背景图像居中放置:
body
{
background-image:url('/i/eg_bg_03.gif');
background-repeat:no-repeat;
background-position:center;
}
为 background-position 属性提供值有很多方法。首先,可以使用一些关键字:top、bottom、left、right 和 center。通常,这些关键字会成对出现,不过也不总是这样。还可以使用长度值,如 100px 或 5cm,最后也可以使用百分数值。不同类型的值对于背景图像的放置稍有差异。
5、背景图像关联
如果文档比较长,那么当文档向下滚动时,背景图像也会随之滚动。当文档滚动到超过图像的位置时,图像就会消失。您可以通过 background-attachment 属性防止这种滚动。通过这个属性,可以声明图像相对于可视区是固定的(fixed),因此不会受到滚动的影响:
body
{
background-image:url(/i/eg_bg_02.gif);
background-repeat:no-repeat;
background-attachment:fixed
}
二、文本CSS 文本属性可定义文本的外观。
通过文本属性,您可以改变文本的颜色、字符间距,对齐文本,装饰文本,对文本进行缩进,等等。
1、缩进文本(text-indent )
p {text-indent: -5em;}
2、水平对齐(text-align)
h1{text-align:center;}
3、字间隔(word-spacing)
p {word-spacing: 30px;}
4、字母间隔(letter-spacing)
h4 {letter-spacing: 20px}
5、字符转换(text-transform)
属性值:
- none
- uppercase
- lowercase
- capitalize
h1 {text-transform: uppercase}
6、文本装饰(text-decoration)
属性值:
- none
- underline
- overline
- line-through
- blink
a {text-decoration: none;}
7、文本方向(direction)
【注:对于行内元素,只有当 unicode-bidi 属性设置为 embed 或 bidi-override 时才会应用 direction 属性。】
属性值:
- ltr
- rtl
p {word-direction : rtl;}
8、处理空白符(white-space)
white-space 属性会影响到用户代理对源文档中的空格、换行和 tab 字符的处理。详:
值 | 空白符 | 换行符 | 自动换行 |
pre-line | 合并 | 保留 | 允许 |
normal | 合并 | 忽略 | 允许 |
nowrap | 合并 | 忽略 | 不允许 |
pre | 保留 | 保留 | 不允许 |
pre-wrap | 保留 | 保留 | 允许 |
三、字体
1、设置字体系列。(font-family)
h1 {font-family: Georgia;}
2、设置字体的尺寸。(font-size)
h1 {font-size:60px;}
h2 {font-size:40px;}
p {font-size:14px;}
3、设置字体风格。(font-style)
属性值:
- normal : 文本正常显示
- italic : 文本斜体显示
- oblique : 文本倾斜显示
p.normal {font-style:normal;}
p.italic {font-style:italic;}
p.oblique {font-style:oblique;}
4、以小型大写字体或者正常字体显示文本。(font-variant)
p {font-variant:small-caps;}
5、设置字体的粗细。(font-weight)
p.normal {font-weight:normal;}
p.thick {font-weight:bold;}
p.thicker {font-weight:900;}
四、列表
1、将图象设置为列表项标志。(list-style-image)
ul li {list-style-image : url(xxx.gif)}
2、设置列表中列表项标志的位置。(list-style-position)
属性值:
- inside:列表项目标记放置在文本以内,且环绕文本根据标记对齐。
- outside:默认值。保持标记位于文本的左侧。列表项目标记放置在文本以外,且环绕文本不根据标记对齐。
- inherit:规定应该从父元素继承 list-style-position 属性的值。
ul{list-style-position:inside;}
3、设置列表项标志的类型。(list-style-type)
ul {list-style-type : square}
五、表格
1、设置是否把表格边框合并为单一的边框。(border-collapse)
属性值:
- separate:默认值。边框会被分开。不会忽略 border-spacing 和 empty-cells 属性。
- collapse:如果可能,边框会合并为一个单一的边框。会忽略 border-spacing 和 empty-cells 属性。
- inherit:规定应该从父元素继承 border-collapse 属性的值。
table{border-collapse:collapse;}
2、设置分隔单元格边框的距离。(border-spacing)
table{border-spacing:10px 50px;}
3、设置表格标题的位置。(caption-side)
属性值:
- top:默认值。把表格标题定位在表格之上。
- bottom:把表格标题定位在表格之下。
- inherit:规定应该从父元素继承 caption-side 属性的值。
caption{caption-side:bottom;}
4、设置是否显示表格中的空单元格。(empty-cells)
属性值:
- hide:不在空单元格周围绘制边框。
- show:在空单元格周围绘制边框。默认。
- inherit:规定应该从父元素继承 empty-cells 属性的值。
table{empty-cells:hide;}
5、设置显示单元、行和列的算法。(table-layout)
属性值:
- automatic:默认。列宽度由单元格内容设定。
- fixed:列宽由表格宽度和列宽度设定。
- inherit:规定应该从父元素继承 table-layout 属性的值。
table{table-layout:fixed;}
六、轮廓
轮廓(outline)是绘制于元素周围的边框线,可起到突出元素的作用。
CSS outline 属性规定元素轮廓的样式、颜色和宽度。
1、设置轮廓的颜色。(outline-color)
p{outline-color:#00ff00;}
2、设置轮廓的样式。(outline-style)
属性值:
- none:默认。定义无轮廓。
- dotted:定义点状的轮廓。
- dashed:定义虚线轮廓。
- solid:定义实线轮廓。
- double:定义双线轮廓。双线的宽度等同于 outline-width 的值。
- groove:定义 3D 凹槽轮廓。此效果取决于 outline-color 值。
- ridge:定义 3D 凸槽轮廓。此效果取决于 outline-color 值。
- inset:定义 3D 凹边轮廓。此效果取决于 outline-color 值。
- outset:定义 3D 凸边轮廓。此效果取决于 outline-color 值。
- inherit:规定应该从父元素继承轮廓样式的设置。
p{outline-style:dotted;}
3、设置轮廓的宽度。(outline-width)
p{outline-width:5px;}
后端码农谈前端(CSS篇)第五课:CSS样式的更多相关文章
- 后端码农谈前端(CSS篇)第二课:CSS的5个来源
0.浏览器默认样式 当你不为html元素设置任何样式时,显示在浏览器上的(比如:<b>元素会显示粗体.<p>元素有纵向margin.<h1>元素字号比<p&g ...
- 后端码农谈前端(CSS篇)第八课:继承与层叠
一.继承 继承:所谓CSS样式继承,就是子元素应用父元素的规则声明.(由这一特性,可将CSS属性分为可继承属性和非可继承属性.)可继承属性:属性值可由父元素继承给子元素的属性称之为可继承属性. 哪些属 ...
- 后端码农谈前端(CSS篇)第七课:定位与浮动
一.定位: 1.定位的理解 (1)相对定位 相对定位是一个非常容易掌握的概念.如果对一个元素进行相对定位,它将出现在它所在的位置上.然后,可以通过设置垂直或水平位置,让这个元素"相对于&qu ...
- 后端码农谈前端(CSS篇)第六课:盒子模型
元素框的最内部分是实际的内容,直接包围内容的是内边距.内边距呈现了元素的背景.内边距的边缘是边框.边框以外是外边距,外边距默认是透明的,因此不会遮挡其后的任何元素. 提示:背景应用于由内容和内边距.边 ...
- 后端码农谈前端(CSS篇)第四课:选择器补充(伪类与伪元素)
一.伪类: 属性 描述 :active 向被激活的元素添加样式. :focus 向拥有键盘输入焦点的元素添加样式. :hover 当鼠标悬浮在元素上方时,向元素添加样式. :link 向未被访问的链接 ...
- 后端码农谈前端(CSS篇)第三课:选择器
一.选择器 1.ID选择器: 语法:首先,ID 选择器前面有一个 # 号 - 也称为棋盘号或井号.请看下面的规则: *#intro {font-weight:bold;} 与类选择器一样,ID 选择器 ...
- 后端码农谈前端(CSS篇)第一课:CSS概述
一.从扮演浏览器开始 扮演浏览器是Head First图书中很有意义的一个环节.可作者忘记了告诉我们扮演浏览器的台本.我们从这里开始. 上图是webkit内核渲染html和css的流程图.从该图我们可 ...
- 后端码农谈前端(HTML篇)第三课:常见属性
一.HTML全局属性 1.核心属性 属性 描述 id 设置元素的唯一 id. class 设置元素的一个或多个类名(引用样式表中的类). style 设置元素的行内样式(CSS内联样式). title ...
- 后端码农谈前端(HTML篇)第二课:常见元素
一.根元素 <doctype> 定义文档类型. <html> 定义 HTML 文档. 二.元数据元素 <head> 定义关于文档的信息. <meta> ...
随机推荐
- linux下subversion server安装手册
linux下subversion server安装手册 安装基于的Linux版本为:Red Hat Enterprise Linux Server release 6.3. 一 准备需要的安装包. ( ...
- 使用netty实现的tcp通讯中如何实现同步返回
在netty实现的tcp通讯中,一切都是异步操作,这提高了系统性能,但是,有时候client需要同步等待消息返回,如何实现呢?笔者已经实现,在此总结下重点要素 实现要点: 1.消息结构设计 消息头中需 ...
- 我的c漏洞
传入指针参数 #include<stdio.h> #include<stdlib.h> void READ(int *a) { scanf("%d",a); ...
- android更换工具链
欢迎转载opendevkit文章, 文章原始地址: http://www.opendevkit.com/?e=73 android编译系统是跟随android源码一起发布的,使用了gcc编译器,也就是 ...
- Python文件读取编码错误问题解决之(PyCharm开发工具默认设置的坑。。。)
刚接触Python学习,正准备做个爬虫的例子,谁知道代码一开始就遇到了一个大坑,狂汗啊. 问题是这样的:我通过代码爬取了博客园首页的HTML代码并存入到blog.txt文件当中,然后准备读取出来之后进 ...
- Linux + Mono 目前已经支持Entity Framework 6.1
在上个随笔 CentOS上 Mono3.2.8运行ASP.NET MVC4经验中,步骤2中要求卸载EF 5.0,这样才能在Linux + Mono的环境中运行ASP.NET MVC4的Web应用.今天 ...
- 分布式系统一致性问题和Raft一致性算法
一致性问题 一致性算法是用来解决一致性问题的,那么什么是一致性问题呢? 在分布式系统中,一致性问题(consensus problem)是指对于一组服务器,给定一组操作,我们需要一个协议使得最后它们的 ...
- UWP开发笔记——嵌套式页面的实现
绪论 UWP开发中,Page是最常用的Control之一,通常情况下,在开发的application中,每一个页面就是一个Page.有时候,为了开发整合度更高,UI表现更为一致的UI,开发者需要把UI ...
- 详解SQL集合运算
以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化. 本系列[T-SQL基础]主要是针对T-SQL基础的总结. [T-SQL基础]01.单表查询-几道sql查询题 ...
- JavaScript –类型之我晕
每次写博我觉得取上恬当的题目比整篇行文都难,词量有限的情况下突然想到JavaScript拾遗应该会是一个非常文艺而夺目的博文题目,但我并没有急着使用,经验告诉我应该先去搜一下看有没有被用过.果不其然, ...