一、背景:

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样式的更多相关文章

  1. 后端码农谈前端(CSS篇)第二课:CSS的5个来源

    0.浏览器默认样式 当你不为html元素设置任何样式时,显示在浏览器上的(比如:<b>元素会显示粗体.<p>元素有纵向margin.<h1>元素字号比<p&g ...

  2. 后端码农谈前端(CSS篇)第八课:继承与层叠

    一.继承 继承:所谓CSS样式继承,就是子元素应用父元素的规则声明.(由这一特性,可将CSS属性分为可继承属性和非可继承属性.)可继承属性:属性值可由父元素继承给子元素的属性称之为可继承属性. 哪些属 ...

  3. 后端码农谈前端(CSS篇)第七课:定位与浮动

    一.定位: 1.定位的理解 (1)相对定位 相对定位是一个非常容易掌握的概念.如果对一个元素进行相对定位,它将出现在它所在的位置上.然后,可以通过设置垂直或水平位置,让这个元素"相对于&qu ...

  4. 后端码农谈前端(CSS篇)第六课:盒子模型

    元素框的最内部分是实际的内容,直接包围内容的是内边距.内边距呈现了元素的背景.内边距的边缘是边框.边框以外是外边距,外边距默认是透明的,因此不会遮挡其后的任何元素. 提示:背景应用于由内容和内边距.边 ...

  5. 后端码农谈前端(CSS篇)第四课:选择器补充(伪类与伪元素)

    一.伪类: 属性 描述 :active 向被激活的元素添加样式. :focus 向拥有键盘输入焦点的元素添加样式. :hover 当鼠标悬浮在元素上方时,向元素添加样式. :link 向未被访问的链接 ...

  6. 后端码农谈前端(CSS篇)第三课:选择器

    一.选择器 1.ID选择器: 语法:首先,ID 选择器前面有一个 # 号 - 也称为棋盘号或井号.请看下面的规则: *#intro {font-weight:bold;} 与类选择器一样,ID 选择器 ...

  7. 后端码农谈前端(CSS篇)第一课:CSS概述

    一.从扮演浏览器开始 扮演浏览器是Head First图书中很有意义的一个环节.可作者忘记了告诉我们扮演浏览器的台本.我们从这里开始. 上图是webkit内核渲染html和css的流程图.从该图我们可 ...

  8. 后端码农谈前端(HTML篇)第三课:常见属性

    一.HTML全局属性 1.核心属性 属性 描述 id 设置元素的唯一 id. class 设置元素的一个或多个类名(引用样式表中的类). style 设置元素的行内样式(CSS内联样式). title ...

  9. 后端码农谈前端(HTML篇)第二课:常见元素

    一.根元素 <doctype> 定义文档类型. <html> 定义 HTML 文档. 二.元数据元素 <head> 定义关于文档的信息. <meta> ...

随机推荐

  1. Introduction ch3

    [1] Don’t reinvent the wheel; use libraries.[2] Don’t believe in magic; understand what your librari ...

  2. MyEclipse 2015 Stable 2.0安装包及破解工具下载

    MyEclipse 2015 Stable 2.0安装包及破解文件下载 之前一直在用myeclipse10.7,后来发现10.7版本有点老了,所以就换了2015稳定版的myeclipse,里面附带了破 ...

  3. mysql用户权限设置

    1.创建新用户 通过root用户登录之后创建 >> grant all privileges on *.* to testuser@localhost identified by &quo ...

  4. 对bit、byte、TByte、Char、string、进制的认识

    在学校老师就教1byte = 8bit,一个Byte在内存中占8个房间.每个房间都有门牌号.找到内存中的内容就找门牌号,寻址什么的,虽然在听,但是脑袋里一头雾水,到现在只知道会用就行,但原理也不是那么 ...

  5. Struts2中获取servlet API的几种方式

    struts2是一个全新的MVC框架,如今被广大的企业和开发者所使用,它的功能非常强大.这给我们在使用servlet 纯java代码写项目的时候带来了福音.但是一般来说,我们的项目不到一定规模并不需要 ...

  6. Erlang在Windows上开发环境搭建全过程讲解目录

    我会按照下面的列表来一步一步讲解,在windows来开发Erlang所用到的一些工具,和知识.我会不停的添加和修正. Erlang运行时环境 Erlang开发工具选择 Rebar来构建,编译,测试,发 ...

  7. 彻底理解ThreadLocal二

    首先,ThreadLocal 不是用来解决共享对象的多线程访问问题的,一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的.各 ...

  8. Android性能优化典范第二季

      Google前几天刚发布了Android性能优化典范第2季的课程,一共20个短视频,包括的内容大致有:电量优化,网络优化,Wear上如何做优化,使用对象池来提高效率,LRU Cache,Bitma ...

  9. 故障排查:是什么 导致了服务器端口telnet失败?

    telnet命令的主要作用是与目标端口进行TCP连接(即完成TCP三次握手). 当服务端启动后,但是telnet其监听的端口,却失败了.或者,当服务端运行了一段时间后,突然其监听的端口telnet不通 ...

  10. 控件UI性能调优 -- SizeChanged不是万能的

    简介 我们在之前的“UWP控件开发——用NuGet包装自己的控件“一文中曾提到XAML的布局系统 和平时使用上的一些问题(重写Measure/Arrange还是使用SizeChanged?),这篇博文 ...