一、背景:

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. Jquery 表单验证

    <html>     <head>         <meta http-equiv="content-type" content="tex ...

  2. 编译系统中BNF: Backus-Naur Form

    巴科斯范式(BNF: Backus-Naur Form 的缩写)是由 John Backus 和 Peter Naur 首次引入一种形式化符号来描述给定语言的语法. 简称为:BNF符号. 现在,几乎每 ...

  3. php composer使用经验

    1.使用composer引用了一个包,但是这个包没有使用命名空间,在项目中该如何使用这个包? 编辑composer.json文件 "autoload":{ "files& ...

  4. ActionBar的使用

    ActionBar的使用很普遍,可以充当工具栏使用.本文介绍如何使用ActionBar. 1.ActionBar一般包含有多个工具按钮.所以,需要新建一个xml文件来存放ActionBar中的内容.在 ...

  5. chardet坑——比蜗牛还慢

    需求 最近在做一个功能,使用python爬取网页然后保存到本地.其中遇到的一个难题是判断页面的编码方式.有问题就百度喽,当时我没想到自己去解决.一百度就找到了一个叫chardet的插件.大喜过望,试了 ...

  6. 我的ORM之六-- 批量

    我的ORM索引 很多时候,批量方案是解决性能的关键 批量插入 SqlBulkCopy 利用 SqlBulkCopy 是性能最高的方式 实现: var s = dbr.Menu.NewMyOqlSet( ...

  7. DeviceOne接受了DevStore的专访

    DevStore隶属深圳尺子科技有限公司,DevStore所有内容(资讯.数据.工具|服务.资源文章.问答……)都贯穿整个项目的生命周期,无论你是设计人员.开发人员.推广人员还是运营人员都可在此找到你 ...

  8. Asp.Net MVC中使用ACE模板之Jqgrid

    第一次看到ACE模板,有种感动,有种相见恨晚的感觉,于是迅速来研究.它本身是基于bootstrap和jqueryui,但更nice,整合之后为后台开发节省了大量时间. 发现虽然不是完美,整体效果还是不 ...

  9. Java提高篇(三一)-----Stack

    在Java中Stack类表示后进先出(LIFO)的对象堆栈.栈是一种非常常见的数据结构,它采用典型的先进后出的操作方式完成的.每一个栈都包含一个栈顶,每次出栈是将栈顶的数据取出,如下: Stack通过 ...

  10. redis使用心得

    原创文章转载请注明出处:@协思, http://zeeman.cnblogs.com   redis是继memcached之后兴起的内存数据库,作者非常崇尚简洁高效,力求以最简单的方式最高效的解决问题 ...