CSS 教程

通过使用 CSS 我们可以大大提升网页开发的工作效率!

在我们的 CSS 教程中,您会学到如何使用 CSS 同时控制多重网页的样式和布局。

各章节实例

本 CSS 教程包含了数百个CSS在线实例

通过本站的在线编辑器,你可以在线编辑CSS,并且可以在线查看修改后的效果。

CSS 实例

body { background-color:#d0e4fe; } h1 { color:orange; text-align:center; } p { font-family:"Times New Roman"; font-size:20px; }

尝试一下 »

点击 "尝试一下" 按钮查看css是如何工作的。

CSS 实例

css 在线150个实例,通过本站编辑器,你可以学习在线查看修改后css的运行效果。

尝试一下!

HTML/CSS/JS 在线工具

HTML/CSS/JS 在线工具可以在线编辑 HTML、CSS、JS 代码,并实时查看效果,你也可以将优质代码保存分享:https://c.runoob.com/front-end/61

CSS 参考手册

在菜鸟教程中你可以找到更完整的CSS属性、选择器的语法,浏览器支持等资料.

CSS 属性

CSS 选择器参考手册

CSS 声音参考手册

CSS 单位

CSS 颜色参考手册

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 简介


你需要具备的知识

在继续学习之前,你需要对下面的知识有基本的了解:

  • HTML / XHTML

如果你希望首先学习这些项目,请在 首页 访问相关教程。


什么是 CSS?

  • CSS 指层叠样式表 (Cascading Style Sheets)
  • 样式定义如何显示 HTML 元素
  • 样式通常存储在样式表
  • 把样式添加到 HTML 4.0 中,是为了解决内容与表现分离的问题
  • 外部样式表可以极大提高工作效率
  • 外部样式表通常存储在 CSS 文件
  • 多个样式定义可层叠为一个

CSS 实例

一个HTML文档可以显示不同的样式: 查看CSS是如何工作的


样式解决了一个很大的问题

HTML 标签原本被设计为用于定义文档内容,如下实例:

<h1>这是一个标题</h1>
<p>这是一个段落。</p>

样式表定义如何显示 HTML 元素,就像 HTML 中的字体标签和颜色属性所起的作用那样。样式通常保存在外部的 .css 文件中。我们只需要编辑一个简单的 CSS 文档就可以改变所有页面的布局和外观。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 语法


实例


CSS 实例

CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明:

选择器通常是您需要改变样式的 HTML 元素。

每条声明由一个属性和一个值组成。

属性(property)是您希望设置的样式属性(style attribute)。每个属性有一个值。属性和值被冒号分开。


CSS 实例

CSS声明总是以分号(;)结束,声明总以大括号({})括起来:

p {color:red;text-align:center;}

为了让CSS可读性更强,你可以每行只描述一个属性:

实例

p
{
color:red;
text-align:center;
}

尝试一下 »


CSS 注释

注释是用来解释你的代码,并且可以随意编辑它,浏览器会忽略它。

CSS注释以 "/*" 开始, 以 "*/" 结束, 实例如下:

/*这是个注释*/
p
{
text-align:center;
/*这是另一个注释*/
color:black;
font-family:arial;
}

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS IdClass


id 和 class 选择器

如果你要在HTML元素中设置CSS样式,你需要在元素中设置"id" 和 "class"选择器。


id 选择器

id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式。

HTML元素以id属性来设置id选择器,CSS 中 id 选择器以 "#" 来定义。

以下的样式规则应用于元素属性 id="para1":

实例

#para1 { text-align:center; color:red; }

尝试一下 »

Remark ID属性不要以数字开头,数字开头的ID在 Mozilla/Firefox 浏览器中不起作用。


class 选择器

class 选择器用于描述一组元素的样式,class 选择器有别于id选择器,class可以在多个元素中使用。

class 选择器在HTML中以class属性表示, 在 CSS 中,类选择器以一个点"."号显示:

在以下的例子中,所有拥有 center 类的 HTML 元素均为居中。

实例

.center {text-align:center;}

尝试一下 »

你也可以指定特定的HTML元素使用class。

在以下实例中, 所有的 p 元素使用 class="center" 让该元素的文本居中:

实例

p.center {text-align:center;}

尝试一下 »

Remark 类名的第一个字符不能使用数字!它无法在 Mozilla 或 Firefox 中起作用。

4 篇笔记 写笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 创建


当读到一个样式表时,浏览器会根据它来格式化 HTML 文档。


如何插入样式表

插入样式表的方法有三种:

  • 外部样式表(External style sheet)
  • 内部样式表(Internal style sheet)
  • 内联样式(Inline style)

外部样式表

当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用 <link> 标签链接到样式表。 <link> 标签在(文档的)头部:

<head> <link rel="stylesheet" type="text/css" href="mystyle.css"> </head>

浏览器会从文件 mystyle.css 中读到样式声明,并根据它来格式文档。

外部样式表可以在任何文本编辑器中进行编辑。文件不能包含任何的 html 标签。样式表应该以 .css 扩展名进行保存。下面是一个样式表文件的例子:

hr {color:sienna;} p {margin-left:20px;} body {background-image:url("/images/back40.gif");}

Remark 不要在属性值与单位之间留有空格(如:"margin-left: 20 px" ),正确的写法是 "margin-left: 20px" 。


内部样式表

当单个文档需要特殊的样式时,就应该使用内部样式表。你可以使用 <style> 标签在文档头部定义内部样式表,就像这样:

<head> <style> hr {color:sienna;} p {margin-left:20px;} body {background-image:url("images/back40.gif");} </style> </head>


内联样式

由于要将表现和内容混杂在一起,内联样式会损失掉样式表的许多优势。请慎用这种方法,例如当样式仅需要在一个元素上应用一次时。

要使用内联样式,你需要在相关的标签内使用样式(style)属性。Style 属性可以包含任何 CSS 属性。本例展示如何改变段落的颜色和左外边距:

<p style="color:sienna;margin-left:20px">这是一个段落。</p>


多重样式

如果某些属性在不同的样式表中被同样的选择器定义,那么属性值将从更具体的样式表中被继承过来。 

例如,外部样式表拥有针对 h3 选择器的三个属性:

h3 { color:red; text-align:left; font-size:8pt; }

而内部样式表拥有针对 h3 选择器的两个属性:

h3 { text-align:right; font-size:20pt; }

假如拥有内部样式表的这个页面同时与外部样式表链接,那么 h3 得到的样式是:

color:red; text-align:right; font-size:20pt;

即颜色属性将被继承于外部样式表,而文字排列(text-alignment)和字体尺寸(font-size)会被内部样式表中的规则取代。


多重样式优先级

样式表允许以多种方式规定样式信息。样式可以规定在单个的 HTML 元素中,在 HTML 页的头元素中,或在一个外部的 CSS 文件中。甚至可以在同一个 HTML 文档内部引用多个外部样式表。

一般情况下,优先级如下:

内联样式)Inline style > (内部样式)Internal style sheet >(外部样式)External style sheet > 浏览器默认样式

<head> <!-- 外部样式 style.css --> <link rel="stylesheet" type="text/css" href="style.css"/> <!-- 设置:h3{color:blue;} --> <style type="text/css"> /* 内部样式 */ h3{color:green;} </style> </head> <body> <h3>测试!</h3> </body>

注意:如果外部样式放在内部样式的后面,则外部样式将覆盖内部样式。

1 篇笔记 写笔记

  1. #1

       tianqixin

      429***967@qq.com

    194

    多重样式优先级深入概念

    优先级是浏览器是通过判断哪些属性值与元素最相关以决定并应用到该元素上的。优先级仅由选择器组成的匹配规则决定的。

    优先级就是分配给指定的CSS声明的一个权重,它由匹配的选择器中的每一种选择器类型的数值决定。

    优先级顺序

    下列是一份优先级逐级增加的选择器列表:

    • 通用选择器(*)
    • 元素(类型)选择器
    • 类选择器
    • 属性选择器
    • 伪类
    • ID 选择器
    • 内联样式

    !important 规则例外

    当 !important 规则被应用在一个样式声明中时,该样式声明会覆盖CSS中任何其他的声明, 无论它处在声明列表中的哪里. 尽管如此, !important规则还是与优先级毫无关系.使用 !important 不是一个好习惯,因为它改变了你样式表本来的级联规则,从而使其难以调试。

    一些经验法则:

    • Always 要优化考虑使用样式规则的优先级来解决问题而不是 !important
    • Only 只在需要覆盖全站或外部 css(例如引用的 ExtJs 或者 YUI )的特定页面中使用 !important
    • Never 永远不要在全站范围的 css 上使用 !important
    • Never 永远不要在你的插件中使用 !important

    权重计算:

    解释:

    • 1. 内联样式表的权值最高 1000;
    • 2. ID 选择器的权值为 100
    • 3. Class 类选择器的权值为 10
    • 4. HTML 标签选择器的权值为 1

    利用选择器的权值进行计算比较,em 显示蓝色,示例如下:https://c.runoob.com/codedemo/3048

    CSS 优先级法则:

    • A 选择器都有一个权值,权值越大越优先;
    • B 当权值相等时,后出现的样式表设置要优于先出现的样式表设置;
    • C 创作者的规则高于浏览者:即网页编写者设置的CSS 样式的优先权高于浏览器所设置的样式;
    • D 继承的CSS 样式不如后来指定的CSS 样式;
    • E 在同一组属性设置中标有“!important”规则的优先级最大;示例如下:https://c.runoob.com/codedemo/3049
      结果:在Firefox 下显示为蓝色;在IE 6 下显示为红色;

    这里引入一张流行的CSS权重关系图:

    更多参考资料

    tianqixin

       tianqixin

      429***967@qq.com

    3年前 (2017-06-23)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 背景


CSS 背景属性用于定义HTML元素的背景。

CSS 属性定义背景效果:

  • background-color
  • background-image
  • background-repeat
  • background-attachment
  • background-position

背景颜色

background-color 属性定义了元素的背景颜色.

页面的背景颜色使用在body的选择器中:

实例

body {background-color:#b0c4de;}

尝试一下 »

CSS中,颜色值通常以以下方式定义:

  • 十六进制 - 如:"#ff0000"
  • RGB - 如:"rgb(255,0,0)"
  • 颜色名称 - 如:"red"

以下实例中, h1, p, 和 div 元素拥有不同的背景颜色:

实例

h1 {background-color:#6495ed;}
p {background-color:#e0ffff;}
div {background-color:#b0c4de;}

尝试一下 »


背景图像

background-image 属性描述了元素的背景图像.

默认情况下,背景图像进行平铺重复显示,以覆盖整个元素实体.

页面背景图片设置实例:

实例

body {background-image:url('paper.gif');}

尝试一下 »

下面是一个例子是一个糟糕的文字和背景图像组合。文本可读性差:

实例

body {background-image:url('bgdesert.jpg');}

尝试一下 »


背景图像 - 水平或垂直平铺

默认情况下 background-image 属性会在页面的水平或者垂直方向平铺。

一些图像如果在水平方向与垂直方向平铺,这样看起来很不协调,如下所示: 

实例

body
{
background-image:url('gradient2.png');
}

尝试一下 »

如果图像只在水平方向平铺 (repeat-x), 页面背景会更好些:

实例

body
{
background-image:url('gradient2.png');
background-repeat:repeat-x;
}

尝试一下 »


背景图像- 设置定位与不平铺

Remark 让背景图像不影响文本的排版

如果你不想让图像平铺,你可以使用 background-repeat 属性:

实例

body
{
background-image:url('img_tree.png');
background-repeat:no-repeat;
}

尝试一下 »

以上实例中,背景图像与文本显示在同一个位置,为了让页面排版更加合理,不影响文本的阅读,我们可以改变图像的位置。

可以利用 background-position 属性改变图像在背景中的位置:

实例

body
{
background-image:url('img_tree.png');
background-repeat:no-repeat;
background-position:right top;
}

尝试一下 »


背景- 简写属性

在以上实例中我们可以看到页面的背景颜色通过了很多的属性来控制。

为了简化这些属性的代码,我们可以将这些属性合并在同一个属性中.

背景颜色的简写属性为 "background":

实例

body {background:#ffffff url('img_tree.png') no-repeat right top;}

尝试一下 »

当使用简写属性时,属性值的顺序为::

  • background-color
  • background-image
  • background-repeat
  • background-attachment
  • background-position

以上属性无需全部使用,你可以按照页面的实际需要使用.

这个实例使用了先前介绍的CSS,你可以查看相应实例: CSS 实例


Examples

更多实例

如何设置固定的背景图像
本例演示如何设置固定的背景图像。图像不会随着页面的其他部分滚动。


CSS 背景属性

Property 描述
background 简写属性,作用是将背景属性设置在一个声明中。
background-attachment 背景图像是否固定或者随着页面的其余部分滚动。
background-color 设置元素的背景颜色。
background-image 把图像设置为背景。
background-position 设置背景图像的起始位置。
background-repeat 设置背景图像是否及如何重复。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 文本格式


文本格式

This text is styled with some of the text formatting properties. The heading uses the text-align, text-transform, and color properties. The paragraph is indented, aligned, and the space between characters is specified. The underline is removed from the "尝试一下" link.


文本颜色

颜色属性被用来设置文字的颜色。

颜色是通过CSS最经常的指定:

  • 十六进制值 - 如: #FF0000
  • 一个RGB值 - 如: RGB(255,0,0)
  • 颜色的名称 - 如: red

参阅 CSS 颜色值 查看完整的颜色值。

一个网页的背景颜色是指在主体内的选择:

实例

body {color:red;} h1 {color:#00ff00;} h2 {color:rgb(255,0,0);}

尝试一下 »

Remark 对于W3C标准的CSS:如果你定义了颜色属性,你还必须定义背景色属性。


文本的对齐方式

文本排列属性是用来设置文本的水平对齐方式。

文本可居中或对齐到左或右,两端对齐.

当text-align设置为"justify",每一行被展开为宽度相等,左,右外边距是对齐(如杂志和报纸)。

实例

h1 {text-align:center;} p.date {text-align:right;} p.main {text-align:justify;}

尝试一下 »


文本修饰

text-decoration 属性用来设置或删除文本的装饰。

从设计的角度看 text-decoration属性主要是用来删除链接的下划线:

实例

a {text-decoration:none;}

尝试一下 »

也可以这样装饰文字:

实例

h1 {text-decoration:overline;} h2 {text-decoration:line-through;} h3 {text-decoration:underline;}

尝试一下 »

Remark 我们不建议强调指出不是链接的文本,因为这常常混淆用户。


文本转换

文本转换属性是用来指定在一个文本中的大写和小写字母。

可用于所有字句变成大写或小写字母,或每个单词的首字母大写。

实例

p.uppercase {text-transform:uppercase;} p.lowercase {text-transform:lowercase;} p.capitalize {text-transform:capitalize;}

尝试一下 »


文本缩进

文本缩进属性是用来指定文本的第一行的缩进。

实例

p {text-indent:50px;}

尝试一下 »


Examples

更多实例

指定字符之间的空间
这个例子演示了如何增加或减少字符之间的空间。

指定行与行之间的空间
这个例子演示了如何指定在一个段落中行之间的空间

设置元素的文本方向
这个例子演示了如何改变元素的文本方向。

增加单词之间的空白空间
这个例子演示了如何增加一个段落中的单词之间的空白空间。

在元素内禁用文字环绕
这个例子演示了如何禁用一个元素内的文字环绕。

垂直对齐图像
这个例子演示了如何设置文本的垂直对齐图像。

添加文本阴影
这个例子演示了如何设置文本阴影。


所有CSS文本属性。

属性 描述
color 设置文本颜色
direction 设置文本方向。
letter-spacing 设置字符间距
line-height 设置行高
text-align 对齐元素中的文本
text-decoration 向文本添加修饰
text-indent 缩进元素中文本的首行
text-shadow 设置文本阴影
text-transform 控制元素中的字母
unicode-bidi 设置或返回文本是否被重写 
vertical-align 设置元素的垂直对齐
white-space 设置元素中空白的处理方式
word-spacing 设置字间距

2 篇笔记 写笔记

  1. #2

       kukudelaomao

      kuk***laomao@126.com

    53

    letter-spacing 与 word-spacing:

    h1{
        letter-spacing:30px;
    }
    ...
    <h1>letter spacing</h1>

    letter-spacing 这个样式使用在英文单词时,是设置字母与字母之间的间距。

    如果想设置英文单词之间的间距,可以使用 word-spacing 来实现。如下代码:

    h1{
        word-spacing:30px;
    }
    ...
    <h1>word spacing</h1>
    kukudelaomao

       kukudelaomao

      kuk***laomao@126.com

    2年前 (2017-12-13)
  2. #1

       Alex Gump

      182***69281@163.com

    46

    汉字的间隔调节也是用 letter-spacing 来实现的。

    因为中文段落里字与字之间没有空格,因而 word-spacing 通常起不到调整间距的作用。

    Alex Gump

       Alex Gump

      182***69281@163.com

    2年前 (2018-08-02)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 字体


CSS字体属性定义字体,加粗,大小,文字样式。


serif和sans-serif字体之间的区别

Serif vs. Sans-serif

Remark 在计算机屏幕上,sans-serif字体被认为是比serif字体容易阅读


CSS字型

在CSS中,有两种类型的字体系列名称:

  • 通用字体系列 - 拥有相似外观的字体系统组合(如 "Serif" 或 "Monospace")
  • 特定字体系列 - 一个特定的字体系列(如 "Times" 或 "Courier")
Generic family 字体系列 说明
Serif Times New Roman
Georgia
Serif字体中字符在行的末端拥有额外的装饰
Sans-serif Arial
Verdana
"Sans"是指无 - 这些字体在末端没有额外的装饰
Monospace Courier New
Lucida Console
所有的等宽字符具有相同的宽度


字体系列

font-family 属性设置文本的字体系列。

font-family 属性应该设置几个字体名称作为一种"后备"机制,如果浏览器不支持第一种字体,他将尝试下一种字体。

注意: 如果字体系列的名称超过一个字,它必须用引号,如Font Family:"宋体"。

多个字体系列是用一个逗号分隔指明:

实例

p{font-family:"Times New Roman", Times, serif;}

尝试一下 »

对于较常用的字体组合,看看我们的 Web安全字体组合


字体样式

主要是用于指定斜体文字的字体样式属性。

这个属性有三个值:

  • 正常 - 正常显示文本
  • 斜体 - 以斜体字显示的文字
  • 倾斜的文字 - 文字向一边倾斜(和斜体非常类似,但不太支持)

实例

p.normal {font-style:normal;}
p.italic {font-style:italic;}
p.oblique {font-style:oblique;}

尝试一下 »


字体大小

font-size 属性设置文本的大小。

能否管理文字的大小,在网页设计中是非常重要的。但是,你不能通过调整字体大小使段落看上去像标题,或者使标题看上去像段落。

请务必使用正确的HTML标签,就<h1> - <h6>表示标题和<p>表示段落:

字体大小的值可以是绝对或相对的大小。

绝对大小:

  • 设置一个指定大小的文本
  • 不允许用户在所有浏览器中改变文本大小
  • 确定了输出的物理尺寸时绝对大小很有用

相对大小:

  • 相对于周围的元素来设置大小
  • 允许用户在浏览器中改变文字大小

Remark 如果你不指定一个字体的大小,默认大小和普通文本段落一样,是16像素(16px=1em)。


设置字体大小像素

设置文字的大小与像素,让您完全控制文字大小:

实例

h1 {font-size:40px;}
h2 {font-size:30px;}
p {font-size:14px;}

尝试一下 »

上面的例子可以在 Internet Explorer 9, Firefox, Chrome, Opera, 和 Safari 中通过缩放浏览器调整文本大小。

虽然可以通过浏览器的缩放工具调整文本大小,但是,这种调整是整个页面,而不仅仅是文本


用em来设置字体大小

为了避免Internet Explorer 中无法调整文本的问题,许多开发者使用 em 单位代替像素。

em的尺寸单位由W3C建议。

1em和当前字体大小相等。在浏览器中默认的文字大小是16px。

因此,1em的默认大小是16px。可以通过下面这个公式将像素转换为em:px/16=em

实例

h1 {font-size:2.5em;} /* 40px/16=2.5em */
h2 {font-size:1.875em;} /* 30px/16=1.875em */
p {font-size:0.875em;} /* 14px/16=0.875em */

尝试一下 »

在上面的例子,em的文字大小是与前面的例子中像素一样。不过,如果使用 em 单位,则可以在所有浏览器中调整文本大小。

不幸的是,仍然是IE浏览器的问题。调整文本的大小时,会比正常的尺寸更大或更小。


使用百分比和EM组合

在所有浏览器的解决方案中,设置 <body>元素的默认字体大小的是百分比:

实例

body {font-size:100%;}
h1 {font-size:2.5em;}
h2 {font-size:1.875em;}
p {font-size:0.875em;}

尝试一下 »

我们的代码非常有效。在所有浏览器中,可以显示相同的文本大小,并允许所有浏览器缩放文本的大小。


Examples

更多实例

设置字体加粗
这个例子演示了如何设置字体的加粗。

可以设置字体的转变
这个例子演示了如何设置字体的转变。

在一个声明中的所有字体属性
本例演示如何使用简写属性将字体属性设置在一个声明之内。


所有CSS字体属性

Property 描述
font 在一个声明中设置所有的字体属性
font-family 指定文本的字体系列
font-size 指定文本的字体大小
font-style 指定文本的字体样式
font-variant 以小型大写字体或者正常字体显示文本。
font-weight 指定字体的粗细。

1 篇笔记 写笔记

  1. #1

       hehe

      368***80@qq.com

      参考地址

    68

    italic 和 oblique 的区别

    一种字体有粗体、斜体、下划线、删除线等诸多属性。

    但是并不是所有字体都做了这些,一些不常用的字体,或许就只有个正常体,如果你用 italic,就没有效果了~

    这时候你就要用 oblique,可以理解成 italic 是使用文字的斜体,oblique 是让没有斜体属性的文字倾斜!

    另 CSS2.0 上边的解释你参考下:italic 和 oblique 都是向右倾斜的文字, 但区别在于 italic 是指斜体字,而 oblique 是倾斜的文字,对于没有斜体的字体应该使用 oblique 属性值来实现倾斜的文字效果。

    hehe

       hehe

      368***80@qq.com

      参考地址

    5个月前 (11-14)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 链接


不同的链接可以有不同的样式。


链接样式

链接的样式,可以用任何CSS属性(如颜色,字体,背景等)。

特别的链接,可以有不同的样式,这取决于他们是什么状态。

这四个链接状态是:

  • a:link - 正常,未访问过的链接
  • a:visited - 用户已访问过的链接
  • a:hover - 当用户鼠标放在链接上时
  • a:active - 链接被点击的那一刻

实例

a:link {color:#000000;} /* 未访问链接*/ a:visited {color:#00FF00;} /* 已访问链接 */ a:hover {color:#FF00FF;} /* 鼠标移动到链接上 */ a:active {color:#0000FF;} /* 鼠标点击时 */

尝试一下 »

当设置为若干链路状态的样式,也有一些顺序规则:

  • a:hover 必须跟在 a:link 和 a:visited后面
  • a:active 必须跟在 a:hover后面

常见的链接样式

根据上述链接的颜色变化的例子,看它是在什么状态。

让我们通过一些其他常见的方式转到链接样式:

文本修饰

text-decoration 属性主要用于删除链接中的下划线:

实例

a:link {text-decoration:none;} a:visited {text-decoration:none;} a:hover {text-decoration:underline;} a:active {text-decoration:underline;}

尝试一下 »

背景颜色

背景颜色属性指定链接背景色:

实例

a:link {background-color:#B2FF99;} a:visited {background-color:#FFFF85;} a:hover {background-color:#FF704D;} a:active {background-color:#FF704D;}

尝试一下 »


Examples

更多实例

添加不同样式的超链接
这个例子演示了如何为超链接添加其他样式。

高级 - 创建链接框
这个例子演示了一个更高级的例子,我们结合若干CSS属性显示为方框。

1 篇笔记 写笔记

  1. #1

       MissHo

      175***5163@qq.com

    217

    链接样式的顺序记忆:

    L(link)OV(visited)E  and  H(hover)A(active)TE
    MissHo

       MissHo

      175***5163@qq.com

    2年前 (2018-06-09)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 列表


CSS列表属性作用如下:

  • 设置不同的列表项标记为有序列表
  • 设置不同的列表项标记为无序列表
  • 设置列表项标记为图像


列表

在HTML中,有两种类型的列表:

  • 无序列表 - 列表项标记用特殊图形(如小黑点、小方框等)
  • 有序列表 - 列表项的标记有数字或字母

使用CSS,可以列出进一步的样式,并可用图像作列表项标记。


不同的列表项标记

list-style-type属性指定列表项标记的类型是:

实例

ul.a {list-style-type: circle;} ul.b {list-style-type: square;} ol.c {list-style-type: upper-roman;} ol.d {list-style-type: lower-alpha;}

尝试一下 »

一些值是无序列表,以及有些是有序列表。


作为列表项标记的图像

要指定列表项标记的图像,使用列表样式图像属性:

实例

ul { list-style-image: url('sqpurple.gif'); }

尝试一下 »

上面的例子在所有浏览器中显示并不相同,IE和Opera显示图像标记比火狐,Chrome和Safari更高一点点。

如果你想在所有的浏览器放置同样的形象标志,就应使用浏览器兼容性解决方案,过程如下

浏览器兼容性解决方案

同样在所有的浏览器,下面的例子会显示的图像标记:

实例

ul { list-style-type: none; padding: 0px; margin: 0px; } ul li { background-image: url(sqpurple.gif); background-repeat: no-repeat; background-position: 0px 5px; padding-left: 14px; }

尝试一下 »

例子解释:

  • ul:
    • 设置列表类型为没有列表项标记
    • 设置填充和边距0px(浏览器兼容性)
  • ul中所有li:
    • 设置图像的URL,并设置它只显示一次(无重复)
    • 您需要的定位图像位置(左0px和上下5px)
    • 用padding-left属性把文本置于列表中

列表 -简写属性

在单个属性中可以指定所有的列表属性。这就是所谓的简写属性。

为列表使用简写属性,列表样式属性设置如下:

实例

ul { list-style: square url("sqpurple.gif"); }

尝试一下 »

可以按顺序设置如下属性:

  • list-style-type
  • list-style-position (有关说明,请参见下面的CSS属性表)
  • list-style-image

如果上述值丢失一个,其余仍在指定的顺序,就没关系。


Examples

更多实例

所有不同的列表项标记
这个例子演示了所有不同的CSS列表项标记。


所有的CSS列表属性

属性 描述
list-style 简写属性。用于把所有用于列表的属性设置于一个声明中
list-style-image 将图像设置为列表项标志。
list-style-position 设置列表中列表项标志的位置。
list-style-type 设置列表项标志的类型。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 表格


使用 CSS 可以使 HTML 表格更美观。

Company Contact Country
Alfreds Futterkiste Maria Anders Germany
Berglunds snabbköp Christina Berglund Sweden
Centro comercial Moctezuma Francisco Chang Mexico
Ernst Handel Roland Mendel Austria
Island Trading Helen Bennett UK
Königlich Essen Philip Cramer Germany
Laughing Bacchus Winecellars Yoshi Tannamuri Canada
Magazzini Alimentari Riuniti Giovanni Rovelli Italy
North/South Simon Crowther UK
Paris spécialités Marie Bertrand France
The Big Cheese Liz Nixon USA
Vaffeljernet Palle Ibsen Denmark

表格边框

指定CSS表格边框,使用border属性。

下面的例子指定了一个表格的Th和TD元素的黑色边框:

实例

table, th, td { border: 1px solid black; }

尝试一下 »

请注意,在上面的例子中的表格有双边框。这是因为表和th/ td元素有独立的边界。

为了显示一个表的单个边框,使用 border-collapse属性。

折叠边框

border-collapse 属性设置表格的边框是否被折叠成一个单一的边框或隔开:

实例

table { border-collapse:collapse; } table,th, td { border: 1px solid black; }

尝试一下 »


表格宽度和高度

Width和height属性定义表格的宽度和高度。

下面的例子是设置100%的宽度,50像素的th元素的高度的表格:

实例

table { width:100%; } th { height:50px; }

尝试一下 »


表格文字对齐

表格中的文本对齐和垂直对齐属性。

text-align属性设置水平对齐方式,向左,右,或中心:

实例

td { text-align:right; }

尝试一下 »

垂直对齐属性设置垂直对齐,比如顶部,底部或中间:

实例

td { height:50px; vertical-align:bottom; }

尝试一下 »


表格填充

如果在表的内容中控制空格之间的边框,应使用td和th元素的填充属性:

实例

td { padding:15px; }

尝试一下 »


表格颜色

下面的例子指定边框的颜色,和th元素的文本和背景颜色:

实例

table, td, th { border:1px solid green; } th { background-color:green; color:white; }

尝试一下 »


Examples

更多实例

制作一个个性表格
这个例子演示了如何创建一个个性的表格。

设置表格标题的位置
这个例子演示了如何定位表格标题。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 盒子模型


CSS 盒子模型(Box Model)

所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用。

CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和实际内容。

盒模型允许我们在其它元素和周围元素边框之间的空间放置元素。

下面的图片说明了盒子模型(Box Model):


CSS box-model

不同部分的说明:

  • Margin(外边距) - 清除边框外的区域,外边距是透明的。
  • Border(边框) - 围绕在内边距和内容外的边框。
  • Padding(内边距) - 清除内容周围的区域,内边距是透明的。
  • Content(内容) - 盒子的内容,显示文本和图像。

为了正确设置元素在所有浏览器中的宽度和高度,你需要知道的盒模型是如何工作的。


元素的宽度和高度

Remark重要: 当您指定一个CSS元素的宽度和高度属性时,你只是设置内容区域的宽度和高度。要知道,完全大小的元素,你还必须添加填充,边框和边距。.

下面的例子中的元素的总宽度为300px:

实例

div { width: 300px; border: 25px solid green; padding: 25px; margin: 25px; }

尝试一下 »

让我们自己算算:
300px (宽)
+ 50px (左 + 右填充)
+ 50px (左 + 右边框)
+ 50px (左 + 右边距)
= 450px

试想一下,你只有250像素的空间。让我们设置总宽度为250像素的元素:

实例

div { width: 220px; padding: 10px; border: 5px solid gray; margin: 0; }

尝试一下 »

最终元素的总宽度计算公式是这样的:

总元素的宽度=宽度+左填充+右填充+左边框+右边框+左边距+右边距

元素的总高度最终计算公式是这样的:

总元素的高度=高度+顶部填充+底部填充+上边框+下边框+上边距+下边距


浏览器的兼容性问题

一旦为页面设置了恰当的 DTD,大多数浏览器都会按照上面的图示来呈现内容。然而 IE 5 和 6 的呈现却是不正确的。根据 W3C 的规范,元素内容占据的空间是由 width 属性设置的,而内容周围的 padding 和 border 值是另外计算的。不幸的是,IE5.X 和 6 在怪异模式中使用自己的非标准模型。这些浏览器的 width 属性不是内容的宽度,而是内容、内边距和边框的宽度的总和。

虽然有方法解决这个问题。但是目前最好的解决方案是回避这个问题。也就是,不要给元素添加具有指定宽度的内边距,而是尝试将内边距或外边距添加到元素的父元素和子元素。

IE8 及更早IE版本不支持设置填充的宽度和边框的宽度属性。

解决IE8及更早版本不兼容问题可以在HTML页面声明 <!DOCTYPE html>即可。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 边框


CSS 边框属性

CSS边框属性允许你指定一个元素边框的样式和颜色。

在四边都有边框


红色底部边框


圆角边框


左侧边框带宽度,颜色为蓝色


边框样式

边框样式属性指定要显示什么样的边界。

Remark border-style属性用来定义边框的样式

border-style 值:

none: 默认无边框


dotted: 定义一个点线边框


dashed: 定义一个虚线边框


solid: 定义实线边框


double: 定义两个边框。 两个边框的宽度和 border-width 的值相同


groove: 定义3D沟槽边框。效果取决于边框的颜色值


ridge: 定义3D脊边框。效果取决于边框的颜色值


inset:定义一个3D的嵌入边框。效果取决于边框的颜色值


outset: 定义一个3D突出边框。 效果取决于边框的颜色值


尝试一下: 设置边框样式


边框宽度

您可以通过 border-width 属性为边框指定宽度。

为边框指定宽度有两种方法:可以指定长度值,比如 2px 或 0.1em(单位为 px, pt, cm, em 等),或者使用 3 个关键字之一,它们分别是 thick 、medium(默认值) 和 thin。

注意:CSS 没有定义 3 个关键字的具体宽度,所以一个用户可能把 thick 、medium 和 thin 分别设置为等于 5px、3px 和 2px,而另一个用户则分别设置为 3px、2px 和 1px。

实例

p.one { border-style:solid; border-width:5px; } p.two { border-style:solid; border-width:medium; }

尝试一下 »


边框颜色

border-color属性用于设置边框的颜色。可以设置的颜色:

  • name - 指定颜色的名称,如 "red"
  • RGB - 指定 RGB 值, 如 "rgb(255,0,0)"
  • Hex - 指定16进制值, 如 "#ff0000"

您还可以设置边框的颜色为"transparent"。

注意: border-color单独使用是不起作用的,必须得先使用border-style来设置边框样式。

实例

p.one { border-style:solid; border-color:red; } p.two { border-style:solid; border-color:#98bf21; }

尝试一下 »


边框-单独设置各边

在CSS中,可以指定不同的侧面不同的边框:

实例

p { border-top-style:dotted; border-right-style:solid; border-bottom-style:dotted; border-left-style:solid; }

尝试一下 »

上面的例子也可以设置一个单一属性:

实例

border-style:dotted solid;

尝试一下 »

border-style属性可以有1-4个值:

  • border-style:dotted solid double dashed;
    • 上边框是 dotted
    • 右边框是 solid
    • 底边框是 double
    • 左边框是 dashed

  • border-style:dotted solid double;
    • 上边框是 dotted
    • 左、右边框是 solid
    • 底边框是 double

  • border-style:dotted solid;
    • 上、底边框是 dotted
    • 右、左边框是 solid

  • border-style:dotted;
    • 四面边框是 dotted

上面的例子用了border-style。然而,它也可以和border-width 、 border-color一起使用。


边框-简写属性

上面的例子用了很多属性来设置边框。

你也可以在一个属性中设置边框。

你可以在"border"属性中设置:

  • border-width
  • border-style (required)
  • border-color

实例

border:5px solid red;

尝试一下 »


Examples

更多实例

所有边框属性在一个声明之中
本例演示用简写属性来将所有四个边框属性设置于同一声明中。

设置下边框的样式
本例演示如何设置下边框的样式。

设置左边框的宽度
本例演示如何设置左边框的宽度。

设置四个边框的颜色
本例演示如何设置四个边框的颜色。可以设置一到四个颜色。

设置右边框的颜色
本例演示如何设置右边框的颜色。


CSS 边框属性

属性 描述
border 简写属性,用于把针对四个边的属性设置在一个声明。
border-style 用于设置元素所有边框的样式,或者单独地为各边设置边框样式。
border-width 简写属性,用于为元素的所有边框设置宽度,或者单独地为各边边框设置宽度。
border-color 简写属性,设置元素的所有边框中可见部分的颜色,或为 4 个边分别设置颜色。
border-bottom 简写属性,用于把下边框的所有属性设置到一个声明中。
border-bottom-color 设置元素的下边框的颜色。
border-bottom-style 设置元素的下边框的样式。
border-bottom-width 设置元素的下边框的宽度。
border-left 简写属性,用于把左边框的所有属性设置到一个声明中。
border-left-color 设置元素的左边框的颜色。
border-left-style 设置元素的左边框的样式。
border-left-width 设置元素的左边框的宽度。
border-right 简写属性,用于把右边框的所有属性设置到一个声明中。
border-right-color 设置元素的右边框的颜色。
border-right-style 设置元素的右边框的样式。
border-right-width 设置元素的右边框的宽度。
border-top 简写属性,用于把上边框的所有属性设置到一个声明中。
border-top-color 设置元素的上边框的颜色。
border-top-style 设置元素的上边框的样式。
border-top-width 设置元素的上边框的宽度。

1 篇笔记 写笔记

  1. #1

       霜天晓角-css-border

      162***4582@qq.com

    116

    border-style:属性1,属性2,属性3,属性4

    上->右->下->左

    border-style:属性1,属性2,属性3

    上->左右->下

    border-style:属性1,属性2

    上下->左右

    border-style:属性1

    上下左右属性相同

    霜天晓角-css-border

       霜天晓角-css-border

      162***4582@qq.com

    1年前 (2019-02-27)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 轮廓(outline)


轮廓(outline)是绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用。

轮廓(outline)属性指定元素轮廓的样式、颜色和宽度。


轮廓(outline)实例

在元素周围画线
本例演示使用outline属性在元素周围画一条线。

设置轮廓的样式
本例演示如何设置轮廓的样式。

设置轮廓的颜色
本例演示如何设置轮廓的颜色。

设置轮廓的宽度
本例演示如何设置轮廓的宽度。


CSS 轮廓(outline)

轮廓(outline)是绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用。

CSS outline 属性规定元素轮廓的样式、颜色和宽度。

Outline

所有CSS 轮廓(outline)属性

"CSS" 列中的数字表示哪个CSS版本定义了该属性(CSS1 或者CSS2)。

属性 说明 CSS
outline 在一个声明中设置所有的轮廓属性 outline-color
outline-style
outline-width
inherit
2
outline-color 设置轮廓的颜色 color-name
hex-number
rgb-number
invert
inherit
2
outline-style 设置轮廓的样式 none
dotted
dashed
solid
double
groove
ridge
inset
outset
inherit
2
outline-width 设置轮廓的宽度 thin
medium
thick
length
inherit
2

1 篇笔记 写笔记

  1. #1

       sanshui

      ymh***9@163.com

      参考地址

    72

    1.outline是不占空间的,既不会增加额外的width或者height(这样不会导致浏览器渲染时出现reflow或是repaint)

    2.outline有可能是非矩形的(火狐浏览器下)

    sanshui

       sanshui

      ymh***9@163.com

      参考地址

    2年前 (2018-08-07)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS margin(外边距)


CSS margin(外边距)属性定义元素周围的空间。


margin

margin 清除周围的(外边框)元素区域。margin 没有背景颜色,是完全透明的。

margin 可以单独改变元素的上,下,左,右边距,也可以一次改变所有的属性。

可能的值

说明
auto 设置浏览器边距。
这样做的结果会依赖于浏览器
length 定义一个固定的margin(使用像素,pt,em等)
% 定义一个使用百分比的边距

Remark Margin可以使用负值,重叠的内容。


Margin - 单边外边距属性

在CSS中,它可以指定不同的侧面不同的边距:

实例

margin-top:100px; margin-bottom:100px; margin-right:50px; margin-left:50px;

尝试一下 »


Margin - 简写属性

为了缩短代码,有可能使用一个属性中margin指定的所有边距属性。这就是所谓的简写属性。

所有边距属性的简写属性是 margin :

实例

margin:100px 50px;

尝试一下 »

margin属性可以有一到四个值。

  • margin:25px 50px 75px 100px;
    • 上边距为25px
    • 右边距为50px
    • 下边距为75px
    • 左边距为100px

  • margin:25px 50px 75px;
    • 上边距为25px
    • 左右边距为50px
    • 下边距为75px

  • margin:25px 50px;
    • 上下边距为25px
    • 左右边距为50px

  • margin:25px;
    • 所有的4个边距都是25px

Examples

更多实例

文本的上边距设置使用厘米值
这个例子演示了如何设置一个使用厘米值的文本的顶部margin。

Set 使用百分比值设置文本的下边距
这个例子演示了如何设置使用百分比值的下边距,相对于包含的元素的宽度。


所有的CSS边距属性

属性 描述
margin 简写属性。在一个声明中设置所有外边距属性。
margin-bottom 设置元素的下外边距。
margin-left 设置元素的左外边距。
margin-right 设置元素的右外边距。
margin-top 设置元素的上外边距。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS padding(填充)


CSS padding(填充)是一个简写属性,定义元素边框与元素内容之间的空间,即上下左右的内边距。


padding(填充)

当元素的 padding(填充)内边距被清除时,所释放的区域将会受到元素背景颜色的填充。

单独使用 padding 属性可以改变上下左右的填充。

可能的值

说明
length 定义一个固定的填充(像素, pt, em,等)
% 使用百分比值定义一个填充


填充- 单边内边距属性

在CSS中,它可以指定不同的侧面不同的填充:

实例

padding-top:25px;
padding-bottom:25px;
padding-right:50px;
padding-left:50px;

尝试一下 »
  • 上内边距是 25px
  • 右内边距是 50px
  • 下内边距是 25px
  • 左内边距是 50px


填充 - 简写属性

为了缩短代码,它可以在一个属性中指定的所有填充属性。

这就是所谓的简写属性。所有的填充属性的简写属性是 padding :

实例

padding:25px 50px;

尝试一下 »

Padding属性,可以有一到四个值。

  padding:25px 50px 75px 100px;

  • 上填充为25px
  • 右填充为50px
  • 下填充为75px
  • 左填充为100px

  padding:25px 50px 75px;

  • 上填充为25px
  • 左右填充为50px
  • 下填充为75px

  padding:25px 50px;

  • 上下填充为25px
  • 左右填充为50px

  padding:25px;

  • 所有的填充都是25px

Examples

更多实例

在一个声明中的所有填充属性
这个例子演示了使用简写属性设置在一个声明中的所有填充属性,可以有一到四个值。

设置左部填充
这个例子演示了如何设置元素左填充。

设置右部填充
这个例子演示了如何设置元素右填充。.

设置上部填充
这个例子演示了如何设置元素上填充。

设置下部填充
这个例子演示了如何设置元素下填充。


所有的CSS填充属性

属性 说明
padding 使用简写属性设置在一个声明中的所有填充属性
padding-bottom 设置元素的底部填充
padding-left 设置元素的左部填充
padding-right 设置元素的右部填充
padding-top 设置元素的顶部填充

4 篇笔记 写笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 分组嵌套 选择器


分组选择器

在样式表中有很多具有相同样式的元素。

h1
{
    color:green;
}
h2
{
    color:green;
}
p
{
    color:green;
}

为了尽量减少代码,你可以使用分组选择器。

每个选择器用逗号分隔。

在下面的例子中,我们对以上代码使用分组选择器:

实例

h1,h2,p { color:green; }

尝试一下 »


嵌套选择器

它可能适用于选择器内部的选择器的样式。

在下面的例子设置了三个样式:

  • p{ }: 为所有 p 元素指定一个样式。
  • .marked{ }: 为所有 class="marked" 的元素指定一个样式。
  • .marked p{ }: 为所有 class="marked" 元素内的 p 元素指定一个样式。
  • p.marked{ }: 为所有 class="marked"p 元素指定一个样式。

实例

p { color:blue; text-align:center; } .marked { background-color:red; } .marked p { color:white; } p.marked{ text-decoration:underline; }

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 尺寸 (Dimension)


CSS 尺寸 (Dimension) 属性允许你控制元素的高度和宽度。同样,它允许你增加行间距。


Examples

更多实例

设置元素的高度

这个例子演示了如何设置不同元素的高度。

使用百分比设置图像的高度

这个例子演示了如何使用百分比值设置元素的高度。

使用像素值来设置元素的宽度

本例演示如何使用像素值来设置元素的宽度。

设置元素的最大高度

此示例演示如何设置元素的最大高度。

使用百分比来设置元素的最大宽度

本例演示如何使用百分比值来设置元素的最大宽度。

设置元素的最低高度

此示例演示如何设置元素的最小高度。

使用像素值设置元素的最小宽度

这个例子演示了如何使用像素值设置元素的最小宽度。


所有CSS 尺寸 (Dimension)属性

属性 描述
height 设置元素的高度。
line-height 设置行高。
max-height 设置元素的最大高度。
max-width 设置元素的最大宽度。
min-height 设置元素的最小高度。
min-width 设置元素的最小宽度。
width 设置元素的宽度。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS Display(显示)Visibility(可见性)


display属性设置一个元素应如何显示,visibility属性指定一个元素应可见还是隐藏。

Box 1

Box 2
Box 3

隐藏元素 - display:none或visibility:hidden

隐藏一个元素可以通过把display属性设置为"none",或把visibility属性设置为"hidden"。但是请注意,这两种方法会产生不同的结果。

visibility:hidden可以隐藏某个元素,但隐藏的元素仍需占用与未隐藏之前一样的空间。也就是说,该元素虽然被隐藏了,但仍然会影响布局。

实例

h1.hidden {visibility:hidden;}

尝试一下 »

display:none可以隐藏某个元素,且隐藏的元素不会占用任何空间。也就是说,该元素不但被隐藏了,而且该元素原本占用的空间也会从页面布局中消失。

实例

h1.hidden {display:none;}

尝试一下 »


CSS Display - 块和内联元素

块元素是一个元素,占用了全部宽度,在前后都是换行符。

块元素的例子:

  • <h1>
  • <p>
  • <div>

内联元素只需要必要的宽度,不强制换行。

内联元素的例子:

  • <span>
  • <a>

如何改变一个元素显示

可以更改内联元素和块元素,反之亦然,可以使页面看起来是以一种特定的方式组合,并仍然遵循web标准。

下面的示例把列表项显示为内联元素:

实例

li {display:inline;}

尝试一下 »

下面的示例把span元素作为块元素:

实例

span {display:block;}

尝试一下 »

注意:变更元素的显示类型看该元素是如何显示,它是什么样的元素。例如:一个内联元素设置为display:block是不允许有它内部的嵌套块元素。


Examples

更多实例

如何显示元素的内联元素。

这个例子演示了如何显示一个元素的内联元素。

如何显示元素的块元素。

这个例子演示了如何显示一个元素的块元素。

如何使用一个表的collapse属性。

这个例子演示了如何使用表的collapse属性。

2 篇笔记 写笔记

  1. #2

       相信

      771***997@qq.com

      参考地址

    185

    块级元素(block)特性:

    • 总是独占一行,表现为另起一行开始,而且其后的元素也必须另起一行显示;
    • 宽度(width)、高度(height)、内边距(padding)和外边距(margin)都可控制;

    内联元素(inline)特性:

    • 和相邻的内联元素在同一行;
    • 宽度(width)、高度(height)、内边距的top/bottom(padding-top/padding-bottom)和外边距的top/bottom(margin-top/margin-bottom)都不可改变,就是里面文字或图片的大小;

    块级元素主要有:

    •  address , blockquote , center , dir , div , dl , fieldset , form , h1 , h2 , h3 , h4 , h5 , h6 , hr , isindex , menu , noframes , noscript , ol , p , pre , table , ul , li

    内联元素主要有:

    • a , abbr , acronym , b , bdo , big , br , cite , code , dfn , em , font , i , img , input , kbd , label , q , s , samp , select , small , span , strike , strong , sub , sup ,textarea , tt , u , var

    可变元素(根据上下文关系确定该元素是块元素还是内联元素):

    • applet ,button ,del ,iframe , ins ,map ,object , script

    CSS中块级、内联元素的应用:

    利用CSS我们可以摆脱上面表格里HTML标签归类的限制,自由地在不同标签/元素上应用我们需要的属性。

    主要用的CSS样式有以下三个:

    • display:block  -- 显示为块级元素
    • display:inline  -- 显示为内联元素
    • display:inline-block -- 显示为内联块元素,表现为同行显示并可修改宽高内外边距等属性

    我们常将<ul>元素加上display:inline-block样式,原本垂直的列表就可以水平显示了。

    相信

       相信

      771***997@qq.com

      参考地址

    2年前 (2017-12-26)
  2. #1

       yapa

      152***35@qq.com

      参考地址

    84

    对于 CSS 里的 visibility 属性,通常其值被设置成 visiblehidden

    visibility: hidden 相当于 display:none,能把元素隐藏起来,但两者的区别在于:

    • 1、display:none 元素不再占用空间。
    • 2、visibility: hidden 使元素在网页上不可见,但仍占用空间。

    然而,visibility 还可能取值为 collapse 。

    当设置元素 visibility: collapse 后,一般的元素的表现与 visibility: hidden 一样,也即其会占用空间。但如果该元素是与 table 相关的元素,例如 table row、table column、table column group、table column group 等,其表现却跟 display: none 一样,也即其占用的空间会释放。

    在不同浏览器下,对 visibility: collapse 的处理方式不同:

    • 1、visibility: collapse 的上述特性仅在 Firefox 下起作用。
    • 2、在 IE 即使设置了 visibility: collapse,还是会显示元素。
    • 3、在 Chrome 下,即使会将元素隐藏,但无论是否是与 table 相关的元素,visibility: collapsevisibility: hidden 没有什么区别,即仍会占用空间。
    yapa

       yapa

      152***35@qq.com

      参考地址

    2年前 (2018-07-25)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS Position(定位)


position 属性指定了元素的定位类型。

position 属性的五个值:

元素可以使用的顶部,底部,左侧和右侧属性定位。然而,这些属性无法工作,除非是先设定position属性。他们也有不同的工作方式,这取决于定位方法。


static 定位

HTML 元素的默认值,即没有定位,遵循正常的文档流对象。

静态定位的元素不会受到 top, bottom, left, right影响。

实例

div.static { position: static; border: 3px solid #73AD21; }

尝试一下 »

fixed 定位

元素的位置相对于浏览器窗口是固定位置。

即使窗口是滚动的它也不会移动:

实例

p.pos_fixed { position:fixed; top:30px; right:5px; }

尝试一下 »

注意: Fixed 定位在 IE7 和 IE8 下需要描述 !DOCTYPE 才能支持。

Fixed定位使元素的位置与文档流无关,因此不占据空间。

Fixed定位的元素和其他元素重叠。


relative 定位

相对定位元素的定位是相对其正常位置。

实例

h2.pos_left { position:relative; left:-20px; } h2.pos_right { position:relative; left:20px; }

尝试一下 »

移动相对定位元素,但它原本所占的空间不会改变。

实例

h2.pos_top { position:relative; top:-50px; }

尝试一下 »

相对定位元素经常被用来作为绝对定位元素的容器块。


absolute 定位

绝对定位的元素的位置相对于最近的已定位父元素,如果元素没有已定位的父元素,那么它的位置相对于<html>:

实例

h2 { position:absolute; left:100px; top:150px; }

尝试一下 »

absolute 定位使元素的位置与文档流无关,因此不占据空间。

absolute 定位的元素和其他元素重叠。


sticky 定位

sticky 英文字面意思是粘,粘贴,所以可以把它称之为粘性定位。

position: sticky; 基于用户的滚动位置来定位。

粘性定位的元素是依赖于用户的滚动,在 position:relativeposition:fixed 定位之间切换。

它的行为就像 position:relative; 而当页面滚动超出目标区域时,它的表现就像 position:fixed;,它会固定在目标位置。

元素定位表现为在跨越特定阈值前为相对定位,之后为固定定位。

这个特定阈值指的是 top, right, bottom 或 left 之一,换言之,指定 top, right, bottom 或 left 四个阈值其中之一,才可使粘性定位生效。否则其行为与相对定位相同。

注意: Internet Explorer, Edge 15 及更早 IE 版本不支持 sticky 定位。 Safari 需要使用 -webkit- prefix (查看以下实例)。

实例

div.sticky { position: -webkit-sticky; /* Safari */ position: sticky; top: 0; background-color: green; border: 2px solid #4CAF50; }

尝试一下 »

重叠的元素

元素的定位与文档流无关,所以它们可以覆盖页面上的其它元素

z-index属性指定了一个元素的堆叠顺序(哪个元素应该放在前面,或后面)

一个元素可以有正数或负数的堆叠顺序:

实例

img { position:absolute; left:0px; top:0px; z-index:-1; }

尝试一下 »

具有更高堆叠顺序的元素总是在较低的堆叠顺序元素的前面。

注意: 如果两个定位元素重叠,没有指定z - index,最后定位在HTML代码中的元素将被显示在最前面。


Examples

更多实例

裁剪元素的外形

此示例演示如何设置元素的外形。该元素被剪裁成这种形状,并显示出来。

如何使用滚动条来显示元素内溢出的内容

这个例子演示了overflow属性创建一个滚动条,当一个元素的内容在指定的区域过大时如何设置以适应。

如何设置浏览器自动溢出处理

这个例子演示了如何设置浏览器来自动处理溢出。

更改光标

这个例子演示了如何改变光标。


所有的CSS定位属性

"CSS" 列中的数字表示哪个CSS(CSS1 或者CSS2)版本定义了该属性。

属性 说明 CSS
bottom 定义了定位元素下外边距边界与其包含块下边界之间的偏移。 auto
length
%
inherit
2
clip 剪辑一个绝对定位的元素 shape
auto
inherit
2
cursor 显示光标移动到指定的类型 url
auto
crosshair
default
pointer
move
e-resize
ne-resize
nw-resize
n-resize
se-resize
sw-resize
s-resize
w-resize
text
wait
help
2
left 定义了定位元素左外边距边界与其包含块左边界之间的偏移。 auto
length
%
inherit
2
overflow
设置当元素的内容溢出其区域时发生的事情。 auto
hidden
scroll
visible
inherit
2
overflow-y
指定如何处理顶部/底部边缘的内容溢出元素的内容区域 auto
hidden
scroll
visible
no-display
no-content
2
overflow-x
指定如何处理右边/左边边缘的内容溢出元素的内容区域 auto
hidden
scroll
visible
no-display
no-content
2
position 指定元素的定位类型 absolute
fixed
relative
static
inherit
2
right 定义了定位元素右外边距边界与其包含块右边界之间的偏移。 auto
length
%
inherit
2
top 定义了一个定位元素的上外边距边界与其包含块上边界之间的偏移。 auto
length
%
inherit
2
z-index 设置元素的堆叠顺序 number
auto
inherit
2

3 篇笔记 写笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 布局 - Overflow

CSS overflow 属性用于控制内容溢出元素框时显示的方式。

这里的文本内容是可以滚动的,滚动条方向是垂直方向。

这里的文本内容是可以滚动的,滚动条方向是垂直方向。

这里的文本内容是可以滚动的,滚动条方向是垂直方向。

这里的文本内容是可以滚动的,滚动条方向是垂直方向。

这里的文本内容是可以滚动的,滚动条方向是垂直方向。

这里的文本内容是可以滚动的,滚动条方向是垂直方向。

尝试一下 »


CSS Overflow

CSS overflow 属性可以控制内容溢出元素框时在对应的元素区间内添加滚动条。

overflow属性有以下值:

描述
visible 默认值。内容不会被修剪,会呈现在元素框之外。
hidden 内容会被修剪,并且其余内容是不可见的。
scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit 规定应该从父元素继承 overflow 属性的值。

注意:overflow 属性只工作于指定高度的块元素上。

注意: 在 OS X Lion ( Mac 系统) 系统上,滚动条默认是隐藏的,使用的时候才会显示 (设置 "overflow:scroll" 也是一样的)。

overflow: visible

默认情况下,overflow 的值为 visible, 意思是内容溢出元素框:

这里的文本内容会溢出元素框。

这里的文本内容会溢出元素框。

这里的文本内容会溢出元素框。

这里的文本内容会溢出元素框。

这里的文本内容会溢出元素框。

这里的文本内容会溢出元素框。

这里的文本内容会溢出元素框。

实例

div { width: 200px; height: 50px; background-color: #eee; overflow: visible; }

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS Float(浮动)


什么是 CSS Float(浮动)?



CSS 的 Float(浮动),会使元素向左或向右移动,其周围的元素也会重新排列。

Float(浮动),往往是用于图像,但它在布局时一样非常有用。


元素怎样浮动

元素的水平方向浮动,意味着元素只能左右移动而不能上下移动。

一个浮动元素会尽量向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。

浮动元素之后的元素将围绕它。

浮动元素之前的元素将不会受到影响。

如果图像是右浮动,下面的文本流将环绕在它左边:

实例

img { float:right; }

尝试一下 »


彼此相邻的浮动元素

如果你把几个浮动的元素放到一起,如果有空间的话,它们将彼此相邻。

在这里,我们对图片廊使用 float 属性:

实例

.thumbnail { float:left; width:110px; height:90px; margin:5px; }

尝试一下 »


清除浮动 - 使用 clear

元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。

clear 属性指定元素两侧不能出现浮动元素。

使用 clear 属性往文本中添加图片廊:

实例

.text_line { clear:both; }

尝试一下 »


Examples

更多实例

为图像添加边框和边距并浮动到段落的右侧

让我们为图像添加边框和边距并浮动到段落的右侧

标题和图片向右侧浮动

让标题和图片向右侧浮动。

让段落的第一个字母浮动到左侧

改变样式,让段落的第一个字母浮动到左侧。

创建一个没有表格的网页

使用 float 创建一个网页页眉、页脚、左边的内容和主要内容。


CSS 中所有的浮动属性

"CSS" 列中的数字表示不同的 CSS 版本(CSS1 或 CSS2)定义了该属性。

属性 描述 CSS
clear 指定不允许元素周围有浮动元素。 left
right
both
none
inherit
1
float 指定一个盒子(元素)是否可以浮动。 left
right
none
inherit
1

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 布局 - 水平 & 垂直对齐


水平 & 垂直居中对齐


元素居中对齐

要水平居中对齐一个元素(如 <div>), 可以使用 margin: auto;

设置到元素的宽度将防止它溢出到容器的边缘。

元素通过指定宽度,并将两边的空外边距平均分配:

div 元素是居中的


实例

.center { margin: auto; width: 50%; border: 3px solid green; padding: 10px; }

尝试一下 »

注意: 如果没有设置 width 属性(或者设置 100%),居中对齐将不起作用。


文本居中对齐

如果仅仅是为了文本在元素内居中对齐,可以使用 text-align: center;

文本居中对齐


实例

.center { text-align: center; border: 3px solid green; }

尝试一下 »

提示: 更多文本对齐实例,请参阅 CSS 文本 章节。


图片居中对齐

要让图片居中对齐, 可以使用 margin: auto; 并将它放到 元素中:

Paris

实例

img { display: block; margin: auto; width: 40%; }

尝试一下 »

左右对齐 - 使用定位方式

我们可以使用 position: absolute; 属性来对齐元素:

菜鸟教程 -- 学的不仅是技术,更是梦想!!!


实例

.right { position: absolute; right: 0px; width: 300px; border: 3px solid #73AD21; padding: 10px; }

尝试一下 »

注释:绝对定位元素会被从正常流中删除,并且能够交叠元素。

提示: 当使用 position 来对齐元素时, 通常 <body> 元素会设置 marginpadding 。 这样可以避免在不同的浏览器中出现可见的差异。

当使用 position 属性时,IE8 以及更早的版本存在一个问题。如果容器元素(在我们的案例中是 <div class="container">)设置了指定的宽度,并且省略了 !DOCTYPE 声明,那么 IE8 以及更早的版本会在右侧增加 17px 的外边距。这似乎是为滚动条预留的空间。当使用 position 属性时,请始终设置 !DOCTYPE 声明:


实例

body { margin: 0; padding: 0; } .container { position: relative; width: 100%; } .right { position: absolute; right: 0px; width: 300px; background-color: #b0e0e6; }

尝试一下 »

左右对齐 - 使用 float 方式

我们也可以使用 float 属性来对齐元素:

实例

.right { float: right; width: 300px; border: 3px solid #73AD21; padding: 10px; }

尝试一下 »

当像这样对齐元素时,对 <body> 元素的外边距和内边距进行预定义是一个好主意。这样可以避免在不同的浏览器中出现可见的差异。

注意:如果子元素的高度大于父元素,且子元素设置了浮动,那么子元素将溢出,这时候你可以使用 "clearfix(清除浮动)" 来解决该问题。

我们可以在父元素上添加 overflow: auto; 来解决子元素溢出的问题:

实例

.clearfix { overflow: auto; }

尝试一下 »

当使用 float 属性时,IE8 以及更早的版本存在一个问题。如果省略 !DOCTYPE 声明,那么 IE8 以及更早的版本会在右侧增加 17px 的外边距。这似乎是为滚动条预留的空间。当使用 float 属性时,请始终设置 !DOCTYPE 声明:

实例

body { margin: 0; padding: 0; } .right { float: right; width: 300px; background-color: #b0e0e6; }

尝试一下 »

垂直居中对齐 - 使用 padding

CSS 中有很多方式可以实现垂直居中对齐。 一个简单的方式就是头部顶部使用 padding:

我是垂直居中。


实例

.center { padding: 70px 0; border: 3px solid green; }

尝试一下 »

如果要水平和垂直都居中,可以使用 paddingtext-align: center:

我是水平和垂直都居中的。


实例

.center { padding: 70px 0; border: 3px solid green; text-align: center; }

尝试一下 »

垂直居中 - 使用 line-height

我是垂直居中的。


实例

.center { line-height: 200px; height: 200px; border: 3px solid green; text-align: center; } /* 如果文本有多行,添加以下代码: */ .center p { line-height: 1.5; display: inline-block; vertical-align: middle; }

尝试一下 »

垂直居中 - 使用 position 和 transform

除了使用 paddingline-height 属性外,我们还可以使用 transform 属性来设置垂直居中:


实例

.center { height: 200px; position: relative; border: 3px solid green; } .center p { margin: 0; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }

尝试一下 »

提示: 更多 transform 属性内容可以参阅 2D 翻转章节


更多实例

CSS 使用 margin 让 div 居中对齐

CSS 使用绝对定位 让 div 右对齐

1 篇笔记 写笔记

  1. #1

       初心不负

      136***0939@qq.com

    42

    设置容器上下 padding 相同实现垂直居中和使用 line-height=height 实现垂直居中仅对单行文本有效,当文本行数超过单行时:

    • 1)padding:文本仍然处于容器垂直居中的位置,但是容器的 height 会随着文本行数的增加而增大;
    • 2)line-height=height:容器的 height 不变,line-height 是文本的行间距,文本会溢出容器显示;

    多行文本可使用 vertical-align: middle; 来实现元素的垂直居中,但是如果子元素的内容体积大于父元素的内容体积时,仍然会溢出,后面需要使用文字溢出处理来解决。

    初心不负

       初心不负

      136***0939@qq.com

    5个月前 (11-20)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 组合选择符


CSS 组合选择符

Note 组合选择符说明了两个选择器直接的关系。

CSS组合选择符包括各种简单选择符的组合方式。

在 CSS3 中包含了四种组合方式:

  • 后代选择器(以空格分隔)
  • 子元素选择器(以大于号分隔)
  • 相邻兄弟选择器(以加号分隔)
  • 普通兄弟选择器(以破折号分隔)

后代选择器

后代选择器用于选取某元素的后代元素。

以下实例选取所有 <p> 元素插入到 <div> 元素中: 

实例

div p { background-color:yellow; }

尝试一下 »


子元素选择器

与后代选择器相比,子元素选择器(Child selectors)只能选择作为某元素子元素的元素。

以下实例选择了<div>元素中所有直接子元素 <p> :

实例

div>p { background-color:yellow; }

尝试一下 »


相邻兄弟选择器

相邻兄弟选择器(Adjacent sibling selector)可选择紧接在另一元素后的元素,且二者有相同父元素。

如果需要选择紧接在另一个元素后的元素,而且二者有相同的父元素,可以使用相邻兄弟选择器(Adjacent sibling selector)。

以下实例选取了所有位于 <div> 元素后的第一个 <p> 元素:

实例

div+p { background-color:yellow; }

尝试一下 »


后续兄弟选择器

后续兄弟选择器选取所有指定元素之后的相邻兄弟元素。

以下实例选取了所有 <div> 元素之后的所有相邻兄弟元素 <p> : 

实例

div~p { background-color:yellow; }

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 伪类(Pseudo-classes)


CSS伪类是用来添加一些选择器的特殊效果。


语法

伪类的语法:

selector:pseudo-class {property:value;}

CSS类也可以使用伪类:

selector.class:pseudo-class {property:value;}


anchor伪类

在支持 CSS 的浏览器中,链接的不同状态都可以以不同的方式显示

实例

a:link {color:#FF0000;} /* 未访问的链接 */ a:visited {color:#00FF00;} /* 已访问的链接 */ a:hover {color:#FF00FF;} /* 鼠标划过链接 */ a:active {color:#0000FF;} /* 已选中的链接 */

尝试一下 »

注意: 在CSS定义中,a:hover 必须被置于 a:link 和 a:visited 之后,才是有效的。

注意: 在 CSS 定义中,a:active 必须被置于 a:hover 之后,才是有效的。

注意:伪类的名称不区分大小写。


伪类和CSS类

伪类可以与 CSS 类配合使用:

a.red:visited {color:#FF0000;} <a class="red" href="css-syntax.html">CSS 语法</a>

如果在上面的例子的链接已被访问,它会显示为红色。


CSS :first-child 伪类

您可以使用 :first-child 伪类来选择父元素的第一个子元素。

注意:在IE8的之前版本必须声明<!DOCTYPE> ,这样 :first-child 才能生效。

匹配第一个 <p> 元素

在下面的例子中,选择器匹配作为任何元素的第一个子元素的 <p> 元素:

实例

p:first-child { color:blue; }

尝试一下 »

匹配所有<p> 元素中的第一个 <i> 元素

在下面的例子中,选择相匹配的所有<p>元素的第一个 <i> 元素:

实例

p > i:first-child { color:blue; }

尝试一下 »

匹配所有作为第一个子元素的 <p> 元素中的所有 <i> 元素

在下面的例子中,选择器匹配所有作为元素的第一个子元素的 <p> 元素中的所有 <i> 元素:

实例

p:first-child i { color:blue; }

尝试一下 »

CSS - :lang 伪类

:lang 伪类使你有能力为不同的语言定义特殊的规则

注意:IE8必须声明<!DOCTYPE>才能支持;lang伪类。

在下面的例子中,:lang 类为属性值为 no 的q元素定义引号的类型:

实例

q:lang(no) {quotes: "~" "~";}

尝试一下 »


Examples

更多实例

为超链接添加不同样式
这个例子演示了如何为超链接添加其他样式。

使用 :focus
这个例子演示了如何使用 :focus伪类。


所有CSS伪类/元素

选择器 示例 示例说明
:checked input:checked 选择所有选中的表单元素
:disabled input:disabled 选择所有禁用的表单元素
:empty p:empty 选择所有没有子元素的p元素
:enabled input:enabled 选择所有启用的表单元素
:first-of-type p:first-of-type 选择的每个 p 元素是其父元素的第一个 p 元素
:in-range input:in-range 选择元素指定范围内的值
:invalid input:invalid 选择所有无效的元素
:last-child p:last-child 选择所有p元素的最后一个子元素
:last-of-type p:last-of-type 选择每个p元素是其母元素的最后一个p元素
:not(selector) :not(p) 选择所有p以外的元素
:nth-child(n) p:nth-child(2) 选择所有 p 元素的父元素的第二个子元素
:nth-last-child(n) p:nth-last-child(2) 选择所有p元素倒数的第二个子元素
:nth-last-of-type(n) p:nth-last-of-type(2) 选择所有p元素倒数的第二个为p的子元素
:nth-of-type(n) p:nth-of-type(2) 选择所有p元素第二个为p的子元素
:only-of-type p:only-of-type 选择所有仅有一个子元素为p的元素
:only-child p:only-child 选择所有仅有一个子元素的p元素
:optional input:optional 选择没有"required"的元素属性
:out-of-range input:out-of-range 选择指定范围以外的值的元素属性
:read-only input:read-only 选择只读属性的元素属性
:read-write input:read-write 选择没有只读属性的元素属性
:required input:required 选择有"required"属性指定的元素属性
:root root 选择文档的根元素
:target #news:target 选择当前活动#news元素(点击URL包含锚的名字)
:valid input:valid 选择所有有效值的属性
:link a:link 选择所有未访问链接
:visited a:visited 选择所有访问过的链接
:active a:active 选择正在活动链接
:hover a:hover 把鼠标放在链接上的状态
:focus input:focus 选择元素输入后具有焦点
:first-letter p:first-letter 选择每个<p> 元素的第一个字母
:first-line p:first-line 选择每个<p> 元素的第一行
:first-child p:first-child 选择器匹配属于任意元素的第一个子元素的 <p> 元素
:before p:before 在每个<p>元素之前插入内容
:after p:after 在每个<p>元素之后插入内容
:lang(language) p:lang(it) 为<p>元素的lang属性选择一个开始值

1 篇笔记 写笔记

  1. #1

       111

      ben***g2017@hotmail.com

    39

    伪类可以看作以选中元素为基准点,此元素的一些状态或属性。

    chrome消除 div 滚动条的宽度,通过箭头键直接控制滚动:

    #divContainer {
      overflow: auto;
      height: 160px;
      width: 260px;
      background-color:red;
    }
    
    #divContainer::-webkit-scrollbar {
        border-width:1px;
    }

    尝试一下 »

    111

       111

      ben***g2017@hotmail.com

    1年前 (2019-02-13)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 伪元素


CSS伪元素是用来添加一些选择器的特殊效果。


语法

伪元素的语法:

selector:pseudo-element {property:value;}

CSS类也可以使用伪元素:

selector.class:pseudo-element {property:value;}


:first-line 伪元素

"first-line" 伪元素用于向文本的首行设置特殊样式。

在下面的例子中,浏览器会根据 "first-line" 伪元素中的样式对 p 元素的第一行文本进行格式化:

实例

p:first-line { color:#ff0000; font-variant:small-caps; }

尝试一下 »

注意:"first-line" 伪元素只能用于块级元素。

注意: 下面的属性可应用于 "first-line" 伪元素:

  • font properties
  • color properties 
  • background properties
  • word-spacing
  • letter-spacing
  • text-decoration
  • vertical-align
  • text-transform
  • line-height
  • clear

:first-letter 伪元素

"first-letter" 伪元素用于向文本的首字母设置特殊样式:

实例

p:first-letter { color:#ff0000; font-size:xx-large; }

尝试一下 »

注意: "first-letter" 伪元素只能用于块级元素。

注意: 下面的属性可应用于 "first-letter" 伪元素: 

  • font properties
  • color properties 
  • background properties
  • margin properties
  • padding properties
  • border properties
  • text-decoration
  • vertical-align (only if "float" is "none")
  • text-transform
  • line-height
  • float
  • clear

伪元素和CSS类

伪元素可以结合CSS类: 

p.article:first-letter {color:#ff0000;}

<p class="article">文章段落</p>

上面的例子会使所有 class 为 article 的段落的首字母变为红色。


多个伪元素

可以结合多个伪元素来使用。

在下面的例子中,段落的第一个字母将显示为红色,其字体大小为 xx-large。第一行中的其余文本将为蓝色,并以小型大写字母显示。

段落中的其余文本将以默认字体大小和颜色来显示:

实例

p:first-letter { color:#ff0000; font-size:xx-large; } p:first-line { color:#0000ff; font-variant:small-caps; }

尝试一下 »


CSS - :before 伪元素

":before" 伪元素可以在元素的内容前面插入新内容。

下面的例子在每个 <h1>元素前面插入一幅图片:

实例

h1:before { content:url(smiley.gif); }

尝试一下 »


CSS - :after 伪元素

":after" 伪元素可以在元素的内容之后插入新内容。

下面的例子在每个 <h1> 元素后面插入一幅图片:

实例

h1:after { content:url(smiley.gif); }

尝试一下 »


所有CSS伪类/元素

选择器 示例 示例说明
:link a:link 选择所有未访问链接
:visited a:visited 选择所有访问过的链接
:active a:active 选择正在活动链接
:hover a:hover 把鼠标放在链接上的状态
:focus input:focus 选择元素输入后具有焦点
:first-letter p:first-letter 选择每个<p> 元素的第一个字母
:first-line p:first-line 选择每个<p> 元素的第一行
:first-child p:first-child 选择器匹配属于任意元素的第一个子元素的 <p> 元素
:before p:before 在每个<p>元素之前插入内容
:after p:after 在每个<p>元素之后插入内容
:lang(language) p:lang(it) 为<p>元素的lang属性选择一个开始值

1 篇笔记 写笔记

  1. #1

       Leon

      531***000@qq.om

    85

    伪类选择元素基于的是当前元素处于的状态,或者说元素当前所具有的特性,而不是元素的id、class、属性等静态的标志。由于状态是动态变化的,所以一个元素达到一个特定状态时,它可能得到一个伪类的样式;当状态改变时,它又会失去这个样式。由此可以看出,它的功能和class有些类似,但它是基于文档之外的抽象,所以叫伪类。

    与伪类针对特殊状态的元素不同的是,伪元素是对元素中的特定内容进行操作,它所操作的层次比伪类更深了一层,也因此它的动态性比伪类要低得多。实际上,设计伪元素的目的就是去选取诸如元素内容第一个字(母)、第一行,选取某些内容前面或后面这种普通的选择器无法完成的工作。它控制的内容实际上和元素是相同的,但是它本身只是基于元素的抽象,并不存在于文档中,所以叫伪元素。

    Leon

       Leon

      531***000@qq.om

    2年前 (2017-11-14)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 导航栏

垂直

水平



导航栏

熟练使用导航栏,对于任何网站都非常重要。

使用CSS你可以转换成好看的导航栏而不是枯燥的HTML菜单。


导航栏=链接列表

作为标准的HTML基础一个导航栏是必须的

。在我们的例子中我们将建立一个标准的HTML列表导航栏。

导航条基本上是一个链接列表,所以使用 <ul> 和 <li>元素非常有意义:

实例

<ul> <li><a href="#home">主页</a></li> <li><a href="#news">新闻</a></li> <li><a href="#contact">联系</a></li> <li><a href="#about">关于</a></li> </ul>

尝试一下 »

现在,让我们从列表中删除边距和填充:

实例

ul { list-style-type: none; margin: 0; padding: 0; }

尝试一下 »

例子解析:

  • list-style-type:none - 移除列表前小标志。一个导航栏并不需要列表标记
  • 移除浏览器的默认设置将边距和填充设置为0

上面的例子中的代码是垂直和水平导航栏使用的标准代码。


垂直导航栏

上面的代码,我们只需要 <a>元素的样式,建立一个垂直的导航栏:

实例

a { display:block; width:60px; }

尝试一下 »

示例说明:

  • display:block - 显示块元素的链接,让整体变为可点击链接区域(不只是文本),它允许我们指定宽度
  • width:60px - 块元素默认情况下是最大宽度。我们要指定一个60像素的宽度

提示:查看 完整样式的垂直导航栏的示例

注意: 请务必指定 <a>元素在垂直导航栏的的宽度。如果省略宽度,IE6可能产生意想不到的效果。


垂直导航条实例

创建一个简单的垂直导航条实例,在鼠标移动到选项时,修改背景颜色:


实例

ul { list-style-type: none; margin: 0; padding: 0; width: 200px; background-color: #f1f1f1; } li a { display: block; color: #000; padding: 8px 16px; text-decoration: none; } /* 鼠标移动到选项上修改背景颜色 */ li a:hover { background-color: #555; color: white; }

尝试一下 »

激活/当前导航条实例

在点击了选项后,我们可以添加 "active" 类来标准哪个选项被选中:

实例

.active { background-color: #4CAF50; color: white; }

尝试一下 »

创建链接并添加边框

可以在 <li> or <a> 上添加text-align:center 样式来让链接居中。

可以在 border <ul> 上添加 border 属性来让导航栏有边框。如果要在每个选项上添加边框,可以在每个 <li> 元素上添加border-bottom :

实例

ul { border: 1px solid #555; } li { text-align: center; border-bottom: 1px solid #555; } li:last-child { border-bottom: none; }

尝试一下 »

全屏高度的固定导航条

接下来我们创建一个左边是全屏高度的固定导航条,右边是可滚动的内容。

实例

ul { list-style-type: none; margin: 0; padding: 0; width: 25%; background-color: #f1f1f1; height: 100%; /* 全屏高度 */ position: fixed; overflow: auto; /* 如果导航栏选项多,允许滚动 */ }

尝试一下 »

注意: 该实例可以在移动设备上使用。


水平导航栏

有两种方法创建横向导航栏。使用内联(inline)浮动(float)的列表项。

这两种方法都很好,但如果你想链接到具有相同的大小,你必须使用浮动的方法。

内联列表项

建立一个横向导航栏的方法之一是指定元素, 上述代码是标准的内联:

实例

li { display:inline; }

尝试一下 »

实例解析:

  • display:inline; -默认情况下,<li>元素是块元素。在这里,我们删除换行符之前和之后每个列表项,以显示一行。

提示: 查看 完整样式的水平导航栏的示例

浮动列表项

在上面的例子中链接有不同的宽度。

对于所有的链接宽度相等,浮动 <li>元素,并指定为 <a>元素的宽度:

实例

li { float:left; } a { display:block; width:60px; }

尝试一下 »

实例解析:

  • float:left - 使用浮动块元素的幻灯片彼此相邻
  • display:block - 显示块元素的链接,让整体变为可点击链接区域(不只是文本),它允许我们指定宽度
  • width:60px - 块元素默认情况下是最大宽度。我们要指定一个60像素的宽度

提示:查看 完全样式的横向导航栏的示例


水平导航条实例

创建一个水平导航条,在鼠标移动到选项后修改背景颜色。

实例

ul { list-style-type: none; margin: 0; padding: 0; overflow: hidden; background-color: #333; } li { float: left; } li a { display: block; color: white; text-align: center; padding: 14px 16px; text-decoration: none; } /*鼠标移动到选项上修改背景颜色 */ li a:hover { background-color: #111; }

尝试一下 »

激活/当前导航条实例

在点击了选项后,我们可以添加 "active" 类来标准哪个选项被选中:

实例

.active { background-color: #4CAF50; }

尝试一下 »

链接右对齐

将导航条最右边的选项设置右对齐 (float:right;):

实例

<ul> <li><a href="#home">主页</a></li> <li><a href="#news">新闻</a></li> <li><a href="#contact">联系</a></li> <li style="float:right"><a class="active" href="#about">关于</a></li> </ul>

尝试一下 »

添加分割线

<li> 通过 border-right 样式来添加分割线:

实例

/* 除了最后一个选项(last-child) 其他的都添加分割线 */ li { border-right: 1px solid #bbb; } li:last-child { border-right: none; }

尝试一下 »

固定导航条

可以设置页面的导航条固定在头部或者底部:

固定在头部

ul { position: fixed; top: 0; width: 100%; }

尝试一下 »

固定在底部

ul { position: fixed; bottom: 0; width: 100%; }

尝试一下 »

注意: 该实例可以在移动设备上使用。


灰色水平导航条

固定在底部

ul { border: 1px solid #e7e7e7; background-color: #f3f3f3; } li a { color: #666; }

尝试一下 »

更多实例

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 下拉菜单

使用 CSS 创建一个鼠标移动上去后显示下拉菜单的效果。


下拉菜单实例

实例演示 1

实例演示 2

实例演示 3


基本下拉菜单

当鼠标移动到指定元素上时,会出现下拉菜单。

实例

<style>
.dropdown
{
    position: relative;
    display: inline-block;
}

.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
    padding: 12px 16px;
    z-index: 1;
}

.dropdown:hover .dropdown-content {
    display: block;
}
</style>

<div class="dropdown">
  <span>Mouse over me</span>
  <div class="dropdown-content">
    <p>Hello World!</p>
  </div>
</div>

尝试一下 »

实例解析

HTML 部分:

我们可以使用任何的 HTML 元素来打开下拉菜单,如:<span>, 或 a <button> 元素。

使用容器元素 (如: <div>) 来创建下拉菜单的内容,并放在任何你想放的位置上。

使用 <div> 元素来包裹这些元素,并使用 CSS 来设置下拉内容的样式。

CSS 部分:

.dropdown 类使用 position:relative, 这将设置下拉菜单的内容放置在下拉按钮 (使用 position:absolute) 的右下角位置。

.dropdown-content 类中是实际的下拉菜单。默认是隐藏的,在鼠标移动到指定元素后会显示。 注意 min-width 的值设置为 160px。你可以随意修改它。 注意: 如果你想设置下拉内容与下拉按钮的宽度一致,可设置 width 为 100% ( overflow:auto 设置可以在小尺寸屏幕上滚动)。

我们使用 box-shadow 属性让下拉菜单看起来像一个"卡片"。

:hover 选择器用于在用户将鼠标移动到下拉按钮上时显示下拉菜单。


下拉菜单

创建下拉菜单,并允许用户选取列表中的某一项:

这个实例类似前面的实例,当我们在下拉列表中添加了链接,并设置了样式:

实例

<style>
/* 下拉按钮样式 */
.dropbtn {
    background-color: #4CAF50;
    color: white;
    padding: 16px;
    font-size: 16px;
    border: none;
    cursor: pointer;
}

/* 容器 <div> - 需要定位下拉内容 */
.dropdown {
    position: relative;
    display: inline-block;
}

/* 下拉内容 (默认隐藏) */
.dropdown-content {
    display: none;
    position: absolute;
    background-color: #f9f9f9;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}

/* 下拉菜单的链接 */
.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

/* 鼠标移上去后修改下拉菜单链接颜色 */
.dropdown-content a:hover {background-color: #f1f1f1}

/* 在鼠标移上去后显示下拉菜单 */
.dropdown:hover .dropdown-content {
    display: block;
}

/* 当下拉内容显示后修改下拉按钮的背景颜色 */
.dropdown:hover .dropbtn {
    background-color: #3e8e41;
}
</style>

<div class="dropdown">
  <button class="dropbtn">下拉菜单</button>
  <div class="dropdown-content">
    <a href="#">菜鸟教程 1</a>
    <a href="#">菜鸟教程 2</a>
    <a href="#">菜鸟教程 3</a>
  </div>
</div>

尝试一下 »

下拉内容对齐方式

float:left;

float:right;

如果你想设置右浮动的下拉菜单内容方向是从右到左,而不是从左到右,可以添加以下代码 right: 0;

实例

.dropdown-content {
    right: 0;
}
尝试一下 »

更多实例

图片下拉
该实例演示了如何如何在下拉菜单中添加图片。

导航条下拉
该实例演示了如何在导航条上添加下拉菜单。

1 篇笔记 写笔记

  1. #1

       TOWER

      lli***connect.ust.hk

    19

    文末的“下拉内容对齐方式”实例中,尝试把.dropdown-content里的 right:0; 改成了 left:0; ,接着模仿实例给右边的按钮加上了内联样式" style="right:0;" " 按理应该能够像实例一样由内联样式(inline style)覆盖内部样式(internal style sheet),实现同样的效果。

    但是实际上由于"left"的优先度高于"right",右边按钮的样式并没有改变。

    最后通过重置left属性实现了想要的结果:

    <div class="dropdown-content" "style="left:unset; right:0;">
    TOWER

       TOWER

      lli***connect.ust.hk

    3个月前 (01-09)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 提示工具(Tooltip)

本文我们为大家介绍如何使用 HTML 与 CSS 来创建提示工具。

提示工具在鼠标移动到指定元素后触发,先看以下四个实例:

头部显示 提示框文本
右边显示 提示框文本
底部显示 提示框文本
左边显示 提示框文本

基础提示框(Tooltip)

提示框在鼠标移动到指定元素上显示:

HTML 代码:

<style>
/* Tooltip 容器 */ .tooltip { position: relative; display: inline-block; border-bottom: 1px dotted black; /* 悬停元素上显示点线 */ } /* Tooltip 文本 */ .tooltip .tooltiptext { visibility: hidden; width: 120px; background-color: black; color: #fff; text-align: center; padding: 5px 0; border-radius: 6px; /* 定位 */ position: absolute; z-index: 1; } /* 鼠标移动上去后显示提示框 */ .tooltip:hover .tooltiptext { visibility: visible; }
</style> <div class="tooltip">鼠标移动到这 <span class="tooltiptext">提示文本</span> </div>

尝试一下 »

实例解析

HTML) 使用容器元素 (like <div>) 并添加 "tooltip" 类。在鼠标移动到 <div> 上时显示提示信息。

提示文本放在内联元素上(如 <span>) 并使用class="tooltiptext"

CSS)tooltip 类使用 position:relative, 提示文本需要设置定位值 position:absolute注意: 接下来的实例会显示更多的定位效果。

tooltiptext 类用于实际的提示文本。模式是隐藏的,在鼠标移动到元素显示 。设置了一些宽度、背景色、字体色等样式。

CSS3 border-radius 属性用于为提示框添加圆角。

:hover 选择器用于在鼠标移动到到指定元素 <div> 上时显示的提示。


定位提示工具

以下实例中,提示工具显示在指定元素的右侧(left:105%) 。

注意 top:-5px 同于定位在容器元素的中间。使用数字 5 因为提示文本的顶部和底部的内边距(padding)是 5px。

如果你修改 padding 的值,top 值也要对应修改,这样才可以确保它是居中对齐的。

在提示框显示在左边的情况也是这个原理。

显示在右侧:

.tooltip .tooltiptext { top: -5px; left: 105%; }

尝试一下 »

显示在左侧:

.tooltip .tooltiptext { top: -5px; right: 105%; }

尝试一下 »

如果你想要提示工具显示在头部和底部。我们需要使用 margin-left 属性,并设置为 -60px。 这个数字计算来源是使用宽度的一半来居中对齐,即: width/2 (120/2 = 60)。

显示在头部:

.tooltip .tooltiptext { width: 120px; bottom: 100%; left: 50%; margin-left: -60px; /* 使用一半宽度 (120/2 = 60) 来居中提示工具 */ }

尝试一下 »

显示在底部:

.tooltip .tooltiptext { width: 120px; top: 100%; left: 50%; margin-left: -60px; /* 使用一半宽度 (120/2 = 60) 来居中提示工具 */ }

尝试一下 »

添加箭头

我们可以用CSS 伪元素 ::after 及 content 属性为提示工具创建一个小箭头标志,箭头是由边框组成的,但组合起来后提示工具像个语音信息框。

以下实例演示了如何为显示在顶部的提示工具添加底部箭头:

顶部提示框/底部箭头:

.tooltip .tooltiptext::after { content: " "; position: absolute; top: 100%; /* 提示工具底部 */ left: 50%; margin-left: -5px; border-width: 5px; border-style: solid; border-color: black transparent transparent transparent; }

尝试一下 »

实例解析

在提示工具内定位箭头: top: 100% , 箭头将显示在提示工具的底部。left: 50% 用于居中对齐箭头。

注意:border-width 属性指定了箭头的大小。如果你修改它,也要修改 margin-left 值。这样箭头在能居中显示。

border-color 用于将内容转换为箭头。设置顶部边框为黑色,其他是透明的。如果设置了其他的也是黑色则会显示为一个黑色的四边形。

以下实例演示了如何在提示工具的头部添加箭头,注意设置边框颜色:

底部提示框/顶部箭头:

.tooltip .tooltiptext::after { content: " "; position: absolute; bottom: 100%; /* 提示工具头部 */ left: 50%; margin-left: -5px; border-width: 5px; border-style: solid; border-color: transparent transparent black transparent; }

尝试一下 »

以下两个实例是左右两边的箭头实例:

右侧提示框/左侧箭头:

.tooltip .tooltiptext::after { content: " "; position: absolute; top: 50%; right: 100%; /* 提示工具左侧 */ margin-top: -5px; border-width: 5px; border-style: solid; border-color: transparent black transparent transparent; }

尝试一下 »

左侧提示框/右侧箭头:

.tooltip .tooltiptext::after { content: " "; position: absolute; top: 50%; left: 100%; /* 提示工具右侧 */ margin-top: -5px; border-width: 5px; border-style: solid; border-color: transparent transparent transparent black; }

尝试一下 »

淡入效果

我们可以使用 CSS3 transition 属性及 opacity 属性来实现提示工具的淡入效果:

左侧提示框/右侧箭头:

.tooltip .tooltiptext { opacity: 0; transition: opacity 1s; } .tooltip:hover .tooltiptext { opacity: 1; }

尝试一下 »

更多实例

漂亮的 CSS 提示框

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 图片廊

以下是使用CSS创建图片廊:

图片文本描述
这里添加图片文本描述
图片文本描述
这里添加图片文本描述
图片文本描述
这里添加图片文本描述
图片文本描述
这里添加图片文本描述

图片廊

以下是使用 CSS 创建图片廊:

实例

<div class="responsive"> <div class="img"> <a target="_blank" href="http://static.runoob.com/images/demo/demo1.jpg"> <img src="http://static.runoob.com/images/demo/demo1.jpg" alt="图片文本描述" width="300" height="200"> </a> <div class="desc">这里添加图片文本描述</div> </div> </div> <div class="responsive"> <div class="img"> <a target="_blank" href="http://static.runoob.com/images/demo/demo2.jpg"> <img src="http://static.runoob.com/images/demo/demo2.jpg" alt="图片文本描述" width="300" height="200"> </a> <div class="desc">这里添加图片文本描述</div> </div> </div> <div class="responsive"> <div class="img"> <a target="_blank" href="http://static.runoob.com/images/demo/demo3.jpg"> <img src="http://static.runoob.com/images/demo/demo3.jpg" alt="图片文本描述" width="300" height="200"> </a> <div class="desc">这里添加图片文本描述</div> </div> </div> <div class="responsive"> <div class="img"> <a target="_blank" href="http://static.runoob.com/images/demo/demo4.jpg"> <img src="http://static.runoob.com/images/demo/demo4.jpg" alt="图片文本描述" width="300" height="200"> </a> <div class="desc">这里添加图片文本描述</div> </div> </div>

尝试一下 »

更多实例

响应式图片廊

使用 CSS3 的媒体查询来创建响应式图片廊:

<div class="responsive"> <div class="img"> <a target="_blank" href="img_fjords.jpg"> <img src="http://www.runoob.com/wp-content/uploads/2016/04/img_fjords.jpg" alt="Trolltunga Norway" width="300" height="200"> </a> <div class="desc">这里添加图片文本描述</div> </div> </div> <div class="responsive"> <div class="img"> <a target="_blank" href="img_forest.jpg"> <img src="http://www.runoob.com/wp-content/uploads/2016/04/img_forest.jpg" alt="Forest" width="600" height="400"> </a> <div class="desc">这里添加图片文本描述</div> </div> </div> <div class="responsive"> <div class="img"> <a target="_blank" href="img_lights.jpg"> <img src="http://www.runoob.com/wp-content/uploads/2016/04/img_lights.jpg" alt="Northern Lights" width="600" height="400"> </a> <div class="desc">这里添加图片文本描述</div> </div> </div> <div class="responsive"> <div class="img"> <a target="_blank" href="img_mountains.jpg"> <img src="http://www.runoob.com/wp-content/uploads/2016/04/img_mountains.jpg" alt="Mountains" width="600" height="400"> </a> <div class="desc">这里添加图片文本描述</div> </div> </div> <div class="clearfix"></div> <div style="padding:6px;"> <h4>重置浏览器大小查看效果</h4> </div>

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 图像透明/不透明


使用CSS很容易创建透明的图像。

注意:CSS Opacity属性是W3C的CSS3建议的一部分。


Examples

更多实例

创建透明图像 - 悬停效果

创建一个具有文本的拥有背景图像的透明框


实例1 - 创建一个透明图像

CSS3中属性的透明度是 opacity

首先,我们将向您展示如何用CSS创建一个透明图像。

正常的图像

klematis

相同的图像带有透明度:

klematis

看看下面的CSS:

img { opacity:0.4; filter:alpha(opacity=40); /* IE8 及其更早版本 */ }

IE9,Firefox,Chrome,Opera,和Safari浏览器使用透明度属性可以将图像变的不透明。 Opacity属性值从0.0 - 1.0。值越小,使得元素更加透明。

IE8和早期版本使用滤镜:alpha(opacity= x)。 x可以采取的值是从0 - 100。较低的值,使得元素更加透明。


实例2 - 图像的透明度 - 悬停效果

将鼠标移到图像上:

klematisklematis

CSS样式:

img { opacity:0.4; filter:alpha(opacity=40); /* IE8 及其更早版本 */ } img:hover { opacity:1.0; filter:alpha(opacity=100); /* IE8 及其更早版本 */ }

第一个CSS块是和例1中的代码类似。此外,我们还增加了当用户将鼠标悬停在其中一个图像上时发生什么。在这种情况下,当用户将鼠标悬停在图像上时,我们希望图片是清晰的。

此CSS是:opacity=1.

IE8和更早版本使用: filter:alpha(opacity=100).

当鼠标指针远离图像时,图像将重新具有透明度。


实例3 - 透明的盒子中的文字

这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。

源代码如下:

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <style>
div.background { width:500px; height:250px; background:url(https://www.runoob.com/images/klematis.jpg) repeat; border:2px solid black; } div.transbox { width:400px; height:180px; margin:30px 50px; background-color:#ffffff; border:1px solid black; opacity:0.6; filter:alpha(opacity=60); /* IE8 及更早版本 */ } div.transbox p { margin:30px 40px; font-weight:bold; color:#000000; }
</style> </head> <body> <div class="background"> <div class="transbox"> <p>这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。这些文本在透明框里。 </p> </div> </div> </body> </html>

首先,我们创建一个固定的高度和宽度的div元素,带有一个背景图片和边框。然后我们在第一个div内部创建一个较小的div元素。 这个div也有一个固定的宽度,背景颜色,边框 - 而且它是透明的。透明的div里面,我们在P元素内部添加一些文本。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 图像拼合技术


图像拼合

图像拼合就是单个图像的集合。

有许多图像的网页可能需要很长的时间来加载和生成多个服务器的请求。

使用图像拼合会降低服务器的请求数量,并节省带宽。


图像拼合 - 简单实例

与其使用三个独立的图像,不如我们使用这种单个图像("img_navsprites.gif"):

navigation images

有了CSS,我们可以只显示我们需要的图像的一部分。

在下面的例子CSS指定显示 "img_navsprites.gif" 的图像的一部分:

实例

img.home
{
width:46px;
height:44px;
background:url(img_navsprites.gif) 0 0;
}

尝试一下 »

实例解析:

  • <img class="home" src="img_trans.gif" /> -因为不能为空,src属性只定义了一个小的透明图像。显示的图像将是我们在CSS中指定的背景图像
  • 宽度:46px;高度:44px; - 定义我们使用的那部分图像
  • background:url(img_navsprites.gif) 0 0; - 定义背景图像和它的位置(左0px,顶部0px)

这是使用图像拼合最简单的方法,现在我们使用链接和悬停效果。


图像拼合 - 创建一个导航列表

我们想使用拼合图像 ("img_navsprites.gif"),以创建一个导航列表。

我们将使用一个HTML列表,因为它可以链接,同时还支持背景图像:

实例

#navlist{position:relative;}
#navlist li{margin:0;padding:0;list-style:none;position:absolute;top:0;}
#navlist li, #navlist a{height:44px;display:block;}

#home{left:0px;width:46px;}
#home{background:url('img_navsprites.gif') 0 0;}

#prev{left:63px;width:43px;}
#prev{background:url('img_navsprites.gif') -47px 0;}

#next{left:129px;width:43px;}
#next{background:url('img_navsprites.gif') -91px 0;}

尝试一下 »

实例解析:

  • #navlist{position:relative;} - 位置设置相对定位,让里面的绝对定位
  • #navlist li{margin:0;padding:0;list-style:none;position:absolute;top:0;} - margin和padding设置为0,列表样式被删除,所有列表项是绝对定位
  • #navlist li, #navlist a{height:44px;display:block;} - 所有图像的高度是44px

现在开始每个具体部分的定位和样式:

  • #home{left:0px;width:46px;} - 定位到最左边的方式,以及图像的宽度是46px
  • #home{background:url(img_navsprites.gif) 0 0;} - 定义背景图像和它的位置(左0px,顶部0px)
  • #prev{left:63px;width:43px;} - 右侧定位63px(#home宽46px+项目之间的一些多余的空间),宽度为43px。
  • #prev{background:url('img_navsprites.gif') -47px 0;} - 定义背景图像右侧47px(#home宽46px+分隔线的1px)
  • #next{left:129px;width:43px;}- 右边定位129px(#prev 63px + #prev宽是43px + 剩余的空间), 宽度是43px.
  • #next{background:url('img_navsprites.gif') no-repeat -91px 0;} - 定义背景图像右边91px(#home 46px+1px的分割线+#prev宽43px+1px的分隔线)

图像拼合s - 悬停效果

现在,我们希望我们的导航列表中添加一个悬停效果。

lamp :hover 选择器用于鼠标悬停在元素上的显示的效果

提示: :hover 选择器可以运用于所有元素。

我们的新图像 ("img_navsprites_hover.gif") 包含三个导航图像和三幅图像:

navigation images

因为这是一个单一的图像,而不是6个单独的图像文件,当用户停留在图像上不会有延迟加载。

我们添加悬停效果只添加三行代码:

实例

#home a:hover{background: url('img_navsprites_hover.gif') 0 -45px;}
#prev a:hover{background: url('img_navsprites_hover.gif') -47px -45px;}
#next a:hover{background: url('img_navsprites_hover.gif') -91px -45px;}

尝试一下 »

实例解析:

  • 由于该列表项包含一个链接,我们可以使用:hover伪类
  • #home a:hover{background: transparent url(img_navsprites_hover.gif) 0 -45px;} - 对于所有三个悬停图像,我们指定相同的背景位置,只是每个再向下45px

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 媒体类型


媒体类型允许你指定文件将如何在不同媒体呈现。该文件可以以不同的方式显示在屏幕上,在纸张上,或听觉浏览器等等。 


媒体类型

一些 CSS 属性只设计了某些媒体。例如 voice-family 属性是专为听觉用户代理。其他一些属性可用于不同的媒体类型。例如, font-size 属性可用于屏幕和印刷媒体,但有不同的值。屏幕和纸上的文件不同,通常需要一个更大的字体,sans-serif 字体比较适合在屏幕上阅读,而 serif 字体更容易在纸上阅读。


@media 规则

@media 规则允许在相同样式表为不同媒体设置不同的样式。

在下面的例子告诉我们浏览器屏幕上显示一个 14 像素的 Verdana 字体样式。但是如果页面打印,将是 10 个像素的 Times 字体。请注意,font-weight 在屏幕上和纸上设置为粗体:

实例

@media screen { p.test {font-family:verdana,sans-serif;font-size:14px;} } @media print { p.test {font-family:times,serif;font-size:10px;} } @media screen,print { p.test {font-weight:bold;} }

尝试一下 »

你可以自己尝试看看 ! 如果您使用的是 Mozilla / Firefox 或 IE5+ 打印此页,你会看到,媒体类型将使用另一种比其他文本字体大小小点的字体显示。


其他媒体类型

注意:媒体类型名称不区分大小写。

媒体类型 描述
all 用于所有的媒体设备。
aural 用于语音和音频合成器。
braille 用于盲人用点字法触觉回馈设备。
embossed 用于分页的盲人用点字法打印机。
handheld 用于小的手持的设备。
print 用于打印机。
projection 用于方案展示,比如幻灯片。
screen 用于电脑显示器。
tty 用于使用固定密度字母栅格的媒体,比如电传打字机和终端。
tv 用于电视机类型的设备。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 属性 选择器


具有特定属性的HTML元素样式

具有特定属性的HTML元素样式不仅仅是class和id。

注意:IE7和IE8需声明!DOCTYPE才支持属性选择器!IE6和更低的版本不支持属性选择器。


属性选择器

下面的例子是把包含标题(title)的所有元素变为蓝色:

实例

[title] { color:blue; }

尝试一下 »


属性和值选择器

下面的实例改变了标题title='runoob'元素的边框样式:

实例

[title=runoob] { border:5px solid green; }

尝试一下 »


属性和值的选择器 - 多值

下面是包含指定值的title属性的元素样式的例子,使用(~)分隔属性和值:

实例

[title~=hello] { color:blue; }

尝试一下 »

下面是包含指定值的lang属性的元素样式的例子,使用(|)分隔属性和值:

实例

[lang|=en] { color:blue; }

尝试一下 »


表单样式

属性选择器样式无需使用class或id的形式:

实例

input[type="text"] { width:150px; display:block; margin-bottom:10px; background-color:yellow; } input[type="button"] { width:120px; margin-left:35px; display:block; }

尝试一下 »

1 篇笔记 写笔记

  1. #1

       fee

      675***474@qq.com

      参考地址

    86

    CSS 属性选择器 *=, |=, ^=, $=, *= 的区别

    先上总结:

    "value 是完整单词" 类型的比较符号: ~=, |=

    "拼接字符串" 类型的比较符号: *=, ^=, $=

    1.attribute 属性中包含 value: 

    [attribute~=value] 属性中包含独立的单词为 value,例如:

    [title~=flower]  -->  <img src="/i/eg_tulip.jpg" title="tulip flower" />

    [attribute*=value] 属性中做字符串拆分,只要能拆出来 value 这个词就行,例如:

    [title*=flower]   -->  <img src="/i/eg_tulip.jpg" title="ffffflowerrrrrr" />

    2.attribute 属性以 value 开头:

    [attribute|=value] 属性中必须是完整且唯一的单词,或者以 - 分隔开:,例如:

    [lang|=en]     -->  <p lang="en">  <p lang="en-us">
    [

    attribute^=value] 属性的前几个字母是 value 就可以,例如:

    [lang^=en]    -->  <p lang="ennn">

    3.attribute 属性以 value 结尾:

    [attribute$=value] 属性的后几个字母是 value 就可以,例如:
    a[src$=".pdf"]

    更多内容参考:CSS 选择器

    fee

       fee

      675***474@qq.com

      参考地址

    2年前 (2018-08-30)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 表单

一个表单案例,我们使用 CSS 来渲染 HTML 的表单元素:

CSS 实例

input[type=text], select { width: 100%; padding: 12px 20px; margin: 8px 0; display: inline-block; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; } input[type=submit] { width: 100%; background-color: #4CAF50; color: white; padding: 14px 20px; margin: 8px 0; border: none; border-radius: 4px; cursor: pointer; } input[type=submit]:hover { background-color: #45a049; } div { border-radius: 5px; background-color: #f2f2f2; padding: 20px; }

尝试一下 »

输入框(input) 样式

使用 width 属性来设置输入框的宽度:

CSS 实例

input { width: 100%; }

尝试一下 »

以上实例中设置了所有 <input> 元素的宽度为 100%,如果你只想设置指定类型的输入框可以使用以下属性选择器:

  • input[type=text] - 选取文本输入框
  • input[type=password] - 选择密码的输入框
  • input[type=number] - 选择数字的输入框
  • ...

输入框填充

使用 padding 属性可以在输入框中添加内边距。

CSS 实例

input[type=text] { width: 100%; padding: 12px 20px; margin: 8px 0; box-sizing: border-box; }

尝试一下 »

注意我们设置了 box-sizing 属性为 border-box。这样可以确保浏览器呈现出带有指定宽度和高度的输入框是把边框和内边距一起计算进去的。
更多内容可以阅读 CSS3 框大小


输入框(input) 边框

使用 border 属性可以修改 input 边框的大小或颜色,使用 border-radius 属性可以给 input 添加圆角:

CSS 实例

input[type=text] { border: 2px solid red; border-radius: 4px; }

尝试一下 »

如果你只想添加底部边框可以使用 border-bottom 属性:

CSS 实例

input[type=text] { border: none; border-bottom: 2px solid red; }

尝试一下 »

输入框(input) 颜色

可以使用 background-color 属性来设置输入框的背景颜色,color 属性用于修改文本颜色:

CSS 实例

input[type=text] { background-color: #3CBC8D; color: white; }

尝试一下 »

输入框(input) 聚焦

默认情况下,一些浏览器在输入框获取焦点时(点击输入框)会有一个蓝色轮廓。我们可以设置 input 样式为 outline: none; 来忽略该效果。

使用 :focus 选择器可以设置输入框在获取焦点时的样式:

CSS 实例

input[type=text]:focus { background-color: lightblue; }

尝试一下 »

CSS 实例

input[type=text]:focus { border: 3px solid #555; }

尝试一下 »

输入框(input) 图标

如果你想在输入框中添加图标,可以使用 background-image 属性和用于定位的background-position 属性。注意设置图标的左边距,让图标有一定的空间:

CSS 实例

input[type=text] { background-color: white; background-image: url('searchicon.png'); background-position: 10px 10px; background-repeat: no-repeat; padding-left: 40px; }

尝试一下 »

带动画的搜索框

以下实例使用了 CSS transition 属性,该属性设置了输入框在获取焦点时会向右延展。你可以在 CSS 动画 章节查看更多内容。

CSS 实例

input[type=text] { -webkit-transition: width 0.4s ease-in-out; transition: width 0.4s ease-in-out; } input[type=text]:focus { width: 100%; }

尝试一下 »

文本框(textarea)样式

注意: 使用 resize 属性来禁用文本框可以重置大小的功能(一般拖动右下角可以重置大小)。

CSS 实例

textarea { width: 100%; height: 150px; padding: 12px 20px; box-sizing: border-box; border: 2px solid #ccc; border-radius: 4px; background-color: #f8f8f8; resize: none; }

尝试一下 »

下拉菜单(select)样式

CSS 实例

select { width: 100%; padding: 16px 20px; border: none; border-radius: 4px; background-color: #f1f1f1; }

尝试一下 »

按钮样式

CSS 实例

input[type=button], input[type=submit], input[type=reset] { background-color: #4CAF50; border: none; color: white; padding: 16px 32px; text-decoration: none; margin: 4px 2px; cursor: pointer; } /* 提示: 使用 width: 100% 设置全宽按钮 */

尝试一下 »

更多内容可以参考我们的 CSS 按钮 教程。


响应式表单

响应式表单可以根据浏览器窗口的大小重新布局各个元素,我们可以通过重置浏览器窗口大小来查看效果:

高级: 以下实例使用了CSS3 多媒体查询 来创建一个响应式表单。

CSS 实例

* { box-sizing: border-box; } input[type=text], select, textarea { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 4px; resize: vertical; } label { padding: 12px 12px 12px 0; display: inline-block; } input[type=submit] { background-color: #4CAF50; color: white; padding: 12px 20px; border: none; border-radius: 4px; cursor: pointer; float: right; } input[type=submit]:hover { background-color: #45a049; } .container { border-radius: 5px; background-color: #f2f2f2; padding: 20px; } .col-25 { float: left; width: 25%; margin-top: 6px; } .col-75 { float: left; width: 75%; margin-top: 6px; } /* 清除浮动 */ .row:after { content: ""; display: table; clear: both; } /* 响应式布局 layout - 在屏幕宽度小于 600px 时, 设置为上下堆叠元素 */ @media screen and (max-width: 600px) { .col-25, .col-75, input[type=submit] { width: 100%; margin-top: 0; } }

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 计数器

CSS 计数器通过一个变量来设置,根据规则递增变量。


使用计数器自动编号

CSS 计数器根据规则来递增变量。

CSS 计数器使用到以下几个属性:

  • counter-reset - 创建或者重置计数器
  • counter-increment - 递增变量
  • content - 插入生成的内容
  • counter()counters() 函数 - 将计数器的值添加到元素

要使用 CSS 计数器,得先用 counter-reset 创建:

以下实例在页面创建一个计数器 (在 body 选择器中),每个 <h2> 元素的计数值都会递增,并在每个 <h2> 元素前添加 "Section <计数值>:"

CSS 实例

body { counter-reset: section; } h2::before { counter-increment: section; content: "Section " counter(section) ": "; }

尝试一下 »

嵌套计数器

以下实例在页面创建一个计数器,在每一个 <h1> 元素前添加计数值 "Section <主标题计数值>.", 嵌套的计数值则放在 <h2> 元素的前面,内容为 "<主标题计数值>.<副标题计数值>":

CSS 实例

body { counter-reset: section; } h1 { counter-reset: subsection; } h1::before { counter-increment: section; content: "Section " counter(section) ". "; } h2::before { counter-increment: subsection; content: counter(section) "." counter(subsection) " "; }

尝试一下 »

计数器也可用于列表中,列表的子元素会自动创建。这里我们使用了 counters() 函数在不同的嵌套层级中插入字符串:

CSS 实例

ol { counter-reset: section; list-style-type: none; } li::before { counter-increment: section; content: counters(section,".") " "; }

尝试一下 »

CSS 计数器属性

属性 描述
content 使用 ::before 和 ::after 伪元素来插入自动生成的内容
counter-increment 递增一个或多个值
counter-reset 创建或重置一个或多个计数器

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 网页布局

网页布局

网页布局有很多种方式,一般分为以下几个部分:头部区域、菜单导航区域、内容区域、底部区域


头部区域

头部区域位于整个网页的顶部,一般用于设置网页的标题或者网页的 logo:

CSS3 实例

.header { background-color: #F1F1F1; text-align: center; padding: 20px; }

尝试一下 »

菜单导航区域

菜单导航条包含了一些链接,可以引导用户浏览其他页面:

CSS3 实例

/* 导航条 */ .topnav { overflow: hidden; background-color: #333; } /* 导航链接 */ .topnav a { float: left; display: block; color: #f2f2f2; text-align: center; padding: 14px 16px; text-decoration: none; } /* 链接 - 修改颜色 */ .topnav a:hover { background-color: #ddd; color: black; }

尝试一下 »

内容区域

内容区域一般有三种形式:

  • 1 列:一般用于移动端
  • 2 列:一般用于平板设备
  • 3 列:一般用于 PC 桌面设备

我们将创建一个 3 列布局,在小的屏幕上将会变成 1 列布局(响应式):

CSS3 实例

/* 创建三个相等的列 */ .column { float: left; width: 33.33%; } /* 列后清除浮动 */ .row:after { content: ""; display: table; clear: both; } /* 响应式布局 - 小于 600 px 时改为上下布局 */ @media screen and (max-width: 600px) { .column { width: 100%; } }

尝试一下 »

提示:要设置两列可以设置 width 为 50%。创建 4 列可以设置为 25%。

提示:如果你想了解更多 @media 的规则剋有查看 CSS3 多媒体查询

提示: 现在更高级的方式是使用 CSS Flexbox 来创建列的布局,但 Internet Explorer 10 及更早的版本不支持该方式, IE6-10 可以使用浮动方式。

CSS Flexbox 的更多内容可以查看 CSS3 弹性盒子(Flex Box)

不相等的列

不相等的列一般是在中间部分设置内容区域,这块也是最大最主要的,左右两次侧可以作为一些导航等相关内容,这三列加起来的宽度是 100%。

CSS3 实例

.column { float: left; } /* 左右侧栏的宽度 */ .column.side { width: 25%; } /* 中间列宽度 */ .column.middle { width: 50%; } /* 响应式布局 - 宽度小于600px时设置上下布局 */ @media screen and (max-width: 600px) { .column.side, .column.middle { width: 100%; } }

尝试一下 »

底部区域

底部区域在网页的最下方,一般包含版权信息和联系方式等。

CSS3 实例

.footer { background-color: #F1F1F1; text-align: center; padding: 10px; }

尝试一下 »

响应式网页布局

通过以上等学习我们来创建一个响应式等页面,页面的布局会根据屏幕的大小来调整:

CSS3 实例

* { box-sizing: border-box; } body { font-family: Arial; padding: 10px; background: #f1f1f1; } /* 头部标题 */ .header { padding: 30px; text-align: center; background: white; } .header h1 { font-size: 50px; } /* 导航条 */ .topnav { overflow: hidden; background-color: #333; } /* 导航条链接 */ .topnav a { float: left; display: block; color: #f2f2f2; text-align: center; padding: 14px 16px; text-decoration: none; } /* 链接颜色修改 */ .topnav a:hover { background-color: #ddd; color: black; } /* 创建两列 */ /* Left column */ .leftcolumn { float: left; width: 75%; } /* 右侧栏 */ .rightcolumn { float: left; width: 25%; background-color: #f1f1f1; padding-left: 20px; } /* 图像部分 */ .fakeimg { background-color: #aaa; width: 100%; padding: 20px; } /* 文章卡片效果 */ .card { background-color: white; padding: 20px; margin-top: 20px; } /* 列后面清除浮动 */ .row:after { content: ""; display: table; clear: both; } /* 底部 */ .footer { padding: 20px; text-align: center; background: #ddd; margin-top: 20px; } /* 响应式布局 - 屏幕尺寸小于 800px 时,两列布局改为上下布局 */ @media screen and (max-width: 800px) { .leftcolumn, .rightcolumn { width: 100%; padding: 0; } } /* 响应式布局 -屏幕尺寸小于 400px 时,导航等布局改为上下布局 */ @media screen and (max-width: 400px) { .topnav a { float: none; width: 100%; } }

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

你已经学习了CSS,下一步学习什么呢?


CSS 总结

本教程已向你讲解了如何创建样式表来同时控制多重页面的样式和布局。

你已经学会如何使用 CSS 来添加背景、格式化文本、以及格式化边框,并定义元素的填充和边距。

同时,你也学会了如何定位元素、控制元素的可见性和尺寸、设置元素的形状、将一个元素置于另一个之后,以及向某些选择器添加特殊的效果,比如链接。

如果需要更多关于 CSS 的信息,请参阅我们的 CSS 实例, CSS 参考手册, and CSS3 教程.


你已经学习了CSS,下一步学习什么呢?

下一步应该学习 JavaScript 。

JavaScript

JavaScript 是最流行的语言之一。

JavaScript 是属于 web 的语言,它适用于 PC、笔记本电脑、平板电脑和移动电话。

JavaScript可以使您的网站更具活力。

许多 HTML 开发者都不是程序员,但是 JavaScript 却拥有非常简单的语法。几乎每个人都有能力将小的 JavaScript 片段添加到网页中。

如果您希望学习更多关于 JavaScript 的知识,可以访问我们的JavaScript 教程

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 实例

CSS背景

设置页面的背景颜色

设置不同元素的背景颜色

设置一个图像作为页面的背景

错误的背景图片

如何在水平方向重复背景图像

如何定位背景图像

一个固定的背景图片(这个图片不会随页面的其余部分滚动)

声明背景属性

高级的背景例子

背景属性的解释

CSS文本

设置不同元素的文本颜色

文本对齐

移除链接下划线

装饰文字

控制文本中的字母

缩进文本

指定了字符之间的空间

指定了行与行之间的空间

设置元素的文本方向

增加单词之间的空格

在一个元素内禁用文字换行

内部文字图像的垂直对齐

 

Text属性的解释

CSS的字体

设置文本的字体

设置字体大小

用px设置的字体的大小

用em设置的字体的大小

用百分比和em设置字体的大小

设置字体样式

设置字体的异体

设置字体的粗细

在一个声明的所有字体属性

 

Font属性的解释

CSS链接

为访问/未访问链接添加不同的颜色

在链接上使用文本装饰

指定链接的背景颜色

超链接添加其他样式

高级 - 创建链接框

 

链接属性的解释

CSS列表

列表中所有不同的列表项标记

设置作为列表项标记的图像

使用跨浏览器解决方案设置一个列表项标记的图像

在一个声明中的所有列表属性

css 移除列表项 li 默认样式

 

列表属性的解释

CSS表格

指定一个表的Th,TD元素和黑色边框

使用border-collapse

指定表格的宽度和高度

设置内容的水平对齐方式(文本对齐)

设置内容的垂直对齐(垂直对齐)

指定TH和TD元素的填充

指定表格边框的颜色

设置表格标题的位置

创建一个奇特的表

 

表格属性的解释

CSS盒模型

指定元素的总宽度为250像素

使用跨浏览器的解决方案指定元素的总宽度为250像素的

 

盒模型的解释

CSS边框

设置四个边框的宽度

设置上边框的宽度

设置底部边框的宽度

设置左边框的宽度

设置右边框的宽度

 

设置四个边框的样式

设置上边框的样式

设置下边框的样式

设置左边框的样式

设置右边框的样式

 

设置四个边框的颜色

设置上边框的颜色

设置下边框的颜色

设置左边框的颜色

设置右边框的颜色

 

在一个声明中的所有边框属性

 

每边设置不同的边框

在一个声明中的所有顶部边框属性

在一个声明中的所有下边框属性

在一个声明中的所有左边框属性

在一个声明中的所有右边框属性

 

边框属性的解释

CSS轮廓

围绕一个元素(outline),绘制一条线

设置轮廓的样式

设置轮廓颜色

设置轮廓的宽度

 

轮廓属性的解释

CSS边距

指定一个元素的边距

边距缩写属性

文本顶部边距设置的值使用厘米

使用百分比值设置文本的底部边缘

使用厘米值设置文本的左边距

 

Margin属性的解释

CSS填充

设置元素的左部填充

设置元素的右部填充

设置元素的顶部填充

设置元素的底部填充

在一个声明中的所有填充属性

 

padding属性的解释

CSS分组和嵌套

组选择器

嵌套选择器

 

分组和嵌套解释

CSS尺寸

使用像素值设置图像的高度

使用百分比设置图像的高度

使用像素值来设置元素的宽度

使用百分比来设置元素的宽度

设置元素的最大高度

使用像素值设置元素的最大宽度

使用百分比来设置元素的最大宽度

设置元素的最低高度

使用像素值来设置元素的最小宽度

使用百分比来设置元素的最小宽度

 

尺寸属性的解释

CSS显示

如何隐藏一个元素(visibility:hidden)

如何不显示元素(display:none)

如何显示一个元素的内联元素

如何显示一个元素的块元素

如何使用表格的collapse属性

 

Display属性的解释

CSS定位

元素相对浏览器窗口的位置

元素的相对定位

元素的绝对定位

重叠的元素

设置元素的形状

如何使用滚动条来显示元素内溢出的内容

如何设置浏览器自动溢出处理

使用像素值设置图像的顶部

使用像素值设置图像的底部

使用像素值设置图像的左边

使用像素值设置图像的右边

更改光标

 

定位属性的解释

CSS浮动

简单的使用float属性

为图像添加边框和边距并浮动到段落的左侧

标题和图片向右侧浮动

让段落的第一个字母浮动到左侧

使用float属性创建一个图片廊

开启float - clear属性

创建一个水平菜单

创建一个没有表格的网页

 

Float属性的解释

CSS对齐元素

使用margin的中间调整

左/右位置对齐

使用跨浏览器解决方案,设置左/右位置对齐

左/右对齐,浮动

使用跨浏览器解决方案,设置左/右位置对齐,浮动

 

对齐属性解释

CSS生成的内容

把括号内的URL用content属性插入到每个链接后面

章节和分节的编号是"第1节","1.1","1.2"等

quotes 属性指定了引号

CSS伪类

添加不同颜色的超链接

给超链接添加其他样式

使用:焦点

:first-child - 匹配了第一个 p 元素

:first-child - 匹配了 p 元素中的第一个 i 元素

:first-child - 匹配了第一个p元素中的所有I元素

使用:lang

 

伪类的解释

CSS伪元素

把文本的第一个字母设为特殊的字母

把第一行文字设置为特殊

把第一行文字的第一个字母设置为特殊

使用:在一个元素之前插入一些内容

使用:在一个元素之后插入一些内容

 

伪元素的解释

CSS导航栏

垂直导航栏的全样式

水平导航栏的全样式

 

导航栏的解释

CSS图片廊

图片廊

 

图片廊解释

CSS图像的不透明度

创建透明图像 - 鼠标悬停效果

创建一个背景图像与文本的透明框

 

图像的不透明度解释

CSS图像拼合

图像拼合

图像拼合-导航列表

悬停效果与图像拼合

 

图像拼合解释

CSS属性选择器

选择具有title属性的元素

选择标题=一个特定值的元素

选择标题=一个特定值的元素(使用(~)分隔属性和值)

选择标题=一个特定值的元素(使用(|)分隔属性和值)

 

属性选择器解释


CSS 应用实例

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 教程


CSS 用于控制网页的样式和布局。

CSS3 是最新的 CSS 标准。

本教程向您讲解 CSS3 中的新特性。

开始学习 CSS3!


CSS3 Transforms

OperaSafariChromeFirefoxInternet Explorer

CSS3 实例

div { transform:rotate(30deg); }

尝试一下 »

点击 "尝试一下" 按钮查看在线实例。

CSS3 参考手册

在菜鸟教程中,我们提供完整的 CSS3 参考手册,包括所有属性和选择器的语法、实例、浏览器支持信息。

CSS 属性参考手册

CSS3 浏览器支持情况

CSS 选择器参考手册

CSS 颜色参考手册

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 简介


对CSS3已完全向后兼容,所以你就不必改变现有的设计。浏览器将永远支持CSS2。


CSS3 模块

CSS3被拆分为"模块"。旧规范已拆分成小块,还增加了新的。

一些最重要CSS3模块如下:

  • 选择器
  • 盒模型
  • 背景和边框
  • 文字特效
  • 2D/3D转换
  • 动画
  • 多列布局
  • 用户界面

CSS3 建议

W3C的CSS3规范仍在开发。

但是,许多新的CSS3属性已在现代浏览器使用。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 边框

CSS3 边框

用 CSS3,你可以创建圆角边框,添加阴影框,并作为边界的形象而不使用设计程序,如 Photoshop。

在本章中,您将了解以下的边框属性:

  • border-radius
  • box-shadow
  • border-image

CSS3 圆角

在 CSS2 中添加圆角棘手。我们不得不在每个角落使用不同的图像。

在 CSS3 中,很容易创建圆角。

在 CSS3 中 border-radius 属性被用于创建圆角:

这是圆角边框!

实例

在div中添加圆角元素:

div
{
border:2px solid;
border-radius:25px;
}

尝试一下 »


CSS3 盒阴影

CSS3 中的 box-shadow 属性被用来添加阴影:


实例

在div中添加box-shadow属性

div
{
box-shadow: 10px 10px 5px #888888;
}

尝试一下 »


CSS3 边界图片

有了 CSS3 的 border-image 属性,你可以使用图像创建一个边框:

border-image 属性允许你指定一个图片作为边框! 用于创建上文边框的原始图像:

在 div 中使用图片创建边框:

Border

实例

在 div 中使用图片创建边框

div
{
border-image:url(border.png) 30 30 round;
-webkit-border-image:url(border.png) 30 30 round; /* Safari 5 and older */
-o-border-image:url(border.png) 30 30 round; /* Opera */
}

尝试一下 »


新边框属性

属性 说明 CSS
border-image 设置所有边框图像的速记属性。 3
border-radius 一个用于设置所有四个边框- *-半径属性的速记属性 3
box-shadow 附加一个或多个下拉框的阴影 3

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 圆角


CSS3 圆角

使用 CSS3 border-radius 属性,你可以给任何元素制作 "圆角"。

CSS3 圆角制作器


浏览器支持

表格中的数字表示支持该属性的第一个浏览器的版本号。

-webkit- 或 -moz- 前面的数字表示支持该前缀的第一个版本。

属性
border-radius 9.0 5.0
4.0 -webkit-
4.0
3.0 -moz-
5.0
3.1 -webkit-
10.5

CSS3 border-radius 属性

使用 CSS3 border-radius 属性,你可以给任何元素制作 "圆角"。

以下为三个实例:

1. 指定背景颜色的元素圆角:

圆角!

2. 指定边框的元素圆角:

圆角!

3. 指定背景图片的元素圆角:

圆角!

代码如下:

实例

#rcorners1 {
    border-radius: 25px;
    background: #8AC007;
    padding: 20px;
    width: 200px;
    height: 150px;
}

#rcorners2 {
    border-radius: 25px;
    border: 2px solid #8AC007;
    padding: 20px;
    width: 200px;
    height: 150px;
}

#rcorners3 {
    border-radius: 25px;
    background: url(paper.gif);
    background-position: left top;
    background-repeat: repeat;
    padding: 20px;
    width: 200px;
    height: 150px;
}

尝试一下 »

CSS3 border-radius - 指定每个圆角

如果你在 border-radius 属性中只指定一个值,那么将生成 4 个 圆角。

但是,如果你要在四个角上一一指定,可以使用以下规则:

  • 四个值: 第一个值为左上角,第二个值为右上角,第三个值为右下角,第四个值为左下角。
  • 三个值: 第一个值为左上角, 第二个值为右上角和左下角,第三个值为右下角
  • 两个值: 第一个值为左上角与右下角,第二个值为右上角与左下角
  • 一个值: 四个圆角值相同

以下为三个实例:

1. 四个值 - border-radius: 15px 50px 30px 5px:

2. 三个值 - border-radius: 15px 50px 30px:

3. 两个值 - border-radius: 15px 50px:

以下为源代码:

实例

#rcorners4 {
    border-radius: 15px 50px 30px 5px;
    background: #8AC007;
    padding: 20px;
    width: 200px;
    height: 150px;
}

#rcorners5 {
    border-radius: 15px 50px 30px;
    background: #8AC007;
    padding: 20px;
    width: 200px;
    height: 150px;
}

#rcorners6 {
    border-radius: 15px 50px;
    background: #8AC007;
    padding: 20px;
    width: 200px;
    height: 150px;
}

尝试一下 »

您还可以创建椭圆边角:

实例

#rcorners7 {
    border-radius: 50px/15px;
    background: #8AC007;
    padding: 20px;
    width: 200px;
    height: 150px;
}

#rcorners8 {
    border-radius: 15px/50px;
    background: #8AC007;
    padding: 20px;
    width: 200px;
    height: 150px;
}

#rcorners9 {
    border-radius: 50%;
    background: #8AC007;
    padding: 20px;
    width: 200px;
    height: 150px;
}

尝试一下 »

CSS3 圆角属性

属性 描述
border-radius 所有四个边角 border-*-*-radius 属性的缩写
border-top-left-radius 定义了左上角的弧度
border-top-right-radius 定义了右上角的弧度
border-bottom-right-radius 定义了右下角的弧度
border-bottom-left-radius 定义了左下角的弧度

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 背景


CSS3 背景

CSS3中包含几个新的背景属性,提供更大背景元素控制。

在本章您将了解以下背景属性:

  • background-image
  • background-size
  • background-origin
  • background-clip

您还将学习如何使用多重背景图像。


浏览器支持

表格中的数字表示支持该属性的第一个浏览器版本号。

紧跟在 -webkit-, -ms- 或 -moz- 前的数字为支持该前缀属性的第一个浏览器版本号。

属性
background-image
(with multiple backgrounds)
4.0 9.0 3.6 3.1 11.5
background-size 4.0
1.0 -webkit-
9.0 4.0
3.6 -moz-
4.1
3.0 -webkit-
10.5
10.0 -o-
background-origin 1.0 9.0 4.0 3.0 10.5
background-clip 4.0 9.0 4.0 3.0 10.5

CSS3 background-image属性

CSS3中可以通过background-image属性添加背景图片。

不同的背景图像和图像用逗号隔开,所有的图片中显示在最顶端的为第一张。

实例

#example1 { background-image: url(img_flwr.gif), url(paper.gif); background-position: right bottom, left top; background-repeat: no-repeat, repeat; }

尝试一下 »


可以给不同的图片设置多个不同的属性

实例

#example1 { background: url(img_flwr.gif) right bottom no-repeat, url(paper.gif) left top repeat; }

尝试一下 »


CSS3 background-size 属性

background-size指定背景图像的大小。CSS3以前,背景图像大小由图像的实际大小决定。

CSS3中可以指定背景图片,让我们重新在不同的环境中指定背景图片的大小。您可以指定像素或百分比大小。

你指定的大小是相对于父元素的宽度和高度的百分比的大小。

OperaSafariChromeFirefoxInternet Explorer

实例 1

重置背景图像:

div { background:url(img_flwr.gif); background-size:80px 60px; background-repeat:no-repeat; }

尝试一下 »

OperaSafariChromeFirefoxInternet Explorer

实例 2

伸展背景图像完全填充内容区域:

div { background:url(img_flwr.gif); background-size:100% 100%; background-repeat:no-repeat; }

尝试一下 »


CSS3 的 background-origin 属性

background-origin 属性指定了背景图像的位置区域。

content-box, padding-box,和 border-box区域内可以放置背景图像。



OperaSafariChromeFirefoxInternet Explorer

实例

在 content-box 中定位背景图片:

div { background:url(img_flwr.gif); background-repeat:no-repeat; background-size:100% 100%; background-origin:content-box; }

尝试一下 »


CSS3 多个背景图像

CSS3 允许你在元素上添加多个背景图像。

OperaSafariChromeFirefoxInternet Explorer

实例

在 body 元素中设置两个背景图像:

body { background-image:url(img_flwr.gif),url(img_tree.gif); }

尝试一下 »


CSS3 background-clip属性

CSS3中background-clip背景剪裁属性是从指定位置开始绘制。

实例

#example1 { border: 10px dotted black; padding: 35px; background: yellow; background-clip: content-box; }

尝试一下 »


新的背景属性

顺序 描述 CSS
background-clip 规定背景的绘制区域。 3
background-origin 规定背景图片的定位区域。 3
background-size 规定背景图片的尺寸。 3

1 篇笔记 写笔记

  1. #1

       kalevi

      kal***@qq.com

      参考地址

    29

    补充:CSS3 多重背景(multiple backgrounds)

    多重背景,也就是CSS2里background的属性外加origin、clip和size组成的新background的多次叠加,缩写时为用逗号隔开的每组值;用分解写法时,如果有多个背景图片,而其他属性只有一个(例如background-repeat只有一个),表明所有背景图片应用该属性值。

    语法缩写如下:

    background : [background-color] | [background-image] | [background-position][/background-size] | [background-repeat] | [background-attachment] | [background-clip] | [background-origin],...

    可以把上面的缩写拆解成以下形式:

    background-image:url1,url2,...,urlN;
    background-repeat : repeat1,repeat2,...,repeatN;
    backround-position : position1,position2,...,positionN;
    background-size : size1,size2,...,sizeN;
    background-attachment : attachment1,attachment2,...,attachmentN;
    background-clip : clip1,clip2,...,clipN;
    background-origin : origin1,origin2,...,originN;
    background-color : color;

    注意:

    • 用逗号隔开每组 background 的缩写值;
    • 如果有 size 值,需要紧跟 position 并且用 "/" 隔开;
    • 如果有多个背景图片,而其他属性只有一个(例如 background-repeat 只有一个),表明所有背景图片应用该属性值。
    • background-color 只能设置一个。

    尝试一下 »

    kalevi

       kalevi

      kal***@qq.com

      参考地址

    3年前 (2017-09-20)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 渐变(Gradients)


渐变效果

CSS3 渐变(gradients)可以让你在两个或多个指定的颜色之间显示平稳的过渡。

以前,你必须使用图像来实现这些效果。但是,通过使用 CSS3 渐变(gradients),你可以减少下载的时间和宽带的使用。此外,渐变效果的元素在放大时看起来效果更好,因为渐变(gradient)是由浏览器生成的。

CSS3 定义了两种类型的渐变(gradients):

  • 线性渐变(Linear Gradients)- 向下/向上/向左/向右/对角方向
  • 径向渐变(Radial Gradients)- 由它们的中心定义

线性渐变相关属性:background-image


浏览器支持

表中的数字指定了完全支持该属性的第一个浏览器版本。

属性
background-image 1.0 4.0 1.0 1.0 3.5

注意:IE8 及更早版本的 IE 浏览器不支持该属性。



CSS3 线性渐变

为了创建一个线性渐变,你必须至少定义两种颜色结点。颜色结点即你想要呈现平稳过渡的颜色。同时,你也可以设置一个起点和一个方向(或一个角度)。

线性渐变的实例:

线性渐变

语法

background-image: linear-gradient(direction, color-stop1, color-stop2, ...);

线性渐变 - 从上到下(默认情况下)

下面的实例演示了从顶部开始的线性渐变。起点是红色,慢慢过渡到蓝色:

实例

从上到下的线性渐变:

#grad { background-image: linear-gradient(#e66465, #9198e5); }

尝试一下 »

线性渐变 - 从左到右

下面的实例演示了从左边开始的线性渐变。起点是红色,慢慢过渡到蓝色:

实例

从左到右的线性渐变:

#grad { height: 200px; background-image: linear-gradient(to right, red , yellow); }

尝试一下 »

线性渐变 - 对角

你可以通过指定水平和垂直的起始位置来制作一个对角渐变。

下面的实例演示了从左上角开始(到右下角)的线性渐变。起点是红色,慢慢过渡到黄色:

实例

从左上角到右下角的线性渐变:

#grad { height: 200px; background-image: linear-gradient(to bottom right, red, yellow); }

尝试一下 »


使用角度

如果你想要在渐变的方向上做更多的控制,你可以定义一个角度,而不用预定义方向(to bottom、to top、to right、to left、to bottom right,等等)。

语法

background-image: linear-gradient(angle, color-stop1, color-stop2);

角度是指水平线和渐变线之间的角度,逆时针方向计算。换句话说,0deg 将创建一个从下到上的渐变,90deg 将创建一个从左到右的渐变。

但是,请注意很多浏览器(Chrome、Safari、firefox等)的使用了旧的标准,即 0deg 将创建一个从左到右的渐变,90deg 将创建一个从下到上的渐变。换算公式 90 - x = y 其中 x 为标准角度,y为非标准角度。

下面的实例演示了如何在线性渐变上使用角度:

实例

带有指定的角度的线性渐变:

#grad { background-image: linear-gradient(-90deg, red, yellow); }

尝试一下 »


使用多个颜色结点

下面的实例演示了如何设置多个颜色结点:

实例

带有多个颜色结点的从上到下的线性渐变:

#grad { background-image: linear-gradient(red, yellow, green); }

尝试一下 »

下面的实例演示了如何创建一个带有彩虹颜色和文本的线性渐变:

实例

#grad { /* 标准的语法 */ background-image: linear-gradient(to right, red,orange,yellow,green,blue,indigo,violet); }

尝试一下 »


使用透明度(transparent)

CSS3 渐变也支持透明度(transparent),可用于创建减弱变淡的效果。

为了添加透明度,我们使用 rgba() 函数来定义颜色结点。rgba() 函数中的最后一个参数可以是从 0 到 1 的值,它定义了颜色的透明度:0 表示完全透明,1 表示完全不透明。

下面的实例演示了从左边开始的线性渐变。起点是完全透明,慢慢过渡到完全不透明的红色:

实例

从左到右的线性渐变,带有透明度:

#grad { background-image: linear-gradient(to right, rgba(255,0,0,0), rgba(255,0,0,1)); }

尝试一下 »


重复的线性渐变

repeating-linear-gradient() 函数用于重复线性渐变:

实例

一个重复的线性渐变:

#grad { /* 标准的语法 */ background-image: repeating-linear-gradient(red, yellow 10%, green 20%); }

尝试一下 »


CSS3 径向渐变

径向渐变由它的中心定义。

为了创建一个径向渐变,你也必须至少定义两种颜色结点。颜色结点即你想要呈现平稳过渡的颜色。同时,你也可以指定渐变的中心、形状(圆形或椭圆形)、大小。默认情况下,渐变的中心是 center(表示在中心点),渐变的形状是 ellipse(表示椭圆形),渐变的大小是 farthest-corner(表示到最远的角落)。

径向渐变的实例:

Radial gradient

语法

background-image: radial-gradient(shape size at position, start-color, ..., last-color);

径向渐变 - 颜色结点均匀分布(默认情况下)

实例

颜色结点均匀分布的径向渐变:

#grad { background-image: radial-gradient(red, yellow, green); }

尝试一下 »

径向渐变 - 颜色结点不均匀分布

实例

颜色结点不均匀分布的径向渐变:

#grad { background-image: radial-gradient(red 5%, yellow 15%, green 60%); }

尝试一下 »


设置形状

shape 参数定义了形状。它可以是值 circle 或 ellipse。其中,circle 表示圆形,ellipse 表示椭圆形。默认值是 ellipse。

实例

形状为圆形的径向渐变:

#grad { background-image: radial-gradient(circle, red, yellow, green); }

尝试一下 »


不同尺寸大小关键字的使用

size 参数定义了渐变的大小。它可以是以下四个值:

  • closest-side
  • farthest-side
  • closest-corner
  • farthest-corner

实例

带有不同尺寸大小关键字的径向渐变:

#grad1 { background-image: radial-gradient(closest-side at 60% 55%, red, yellow, black); } #grad2 { background-image: radial-gradient(farthest-side at 60% 55%, red, yellow, black); }

尝试一下 »


重复的径向渐变

repeating-radial-gradient() 函数用于重复径向渐变:

实例

一个重复的径向渐变:

#grad { background-image: repeating-radial-gradient(red, yellow 10%, green 15%); }

尝试一下 »

1 篇笔记 写笔记

  1. #1

       薛定谔的bug

      135***2040@qq.com

      参考地址

    58

    CSS 中 border: 1px solid rgba(0, 0, 0, 0.1); 是什么意思?

    意思是: 设定元素的边框为 1 像素宽、实线、颜色使用 rgba 来表达。

    其中,rgba 是 CSS3 中的属性。rgba 括号中前 3 个数字代表着 red green blue 三种颜色的 rgb 值(0-255),最后一个是设定这个颜色的透明度即 alpha 值。范围从 0 到 1,越接近 1,代表透明度越低。

    薛定谔的bug

       薛定谔的bug

      135***2040@qq.com

      参考地址

    2年前 (2018-04-30)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 文本效果


CSS3 文本效果

CSS3中包含几个新的文本特征。

在本章中您将了解以下文本属性:

  • text-shadow
  • box-shadow
  • text-overflow
  • word-wrap
  • word-break

浏览器支持

属性
text-shadow 4.0 10.0 3.5 4.0 9.5
box-shadow 10.0
4.0 -webkit-
9.0 4.0
3.5 -moz-
5.1
3.1 -webkit-
10.5
text-overflow 4.0 6.0 7.0 3.1 11.0
9.0 -o-
word-wrap 23.0 5.5 3.5 6.1 12.1
word-break 4.0 5.5 15.0 3.1 15.0

CSS3 的文本阴影

CSS3 中,text-shadow属性适用于文本阴影。

阴影效果!

您指定了水平阴影,垂直阴影,模糊的距离,以及阴影的颜色:

OperaSafariChromeFirefoxInternet Explorer

实例

给标题添加阴影:

h1 { text-shadow: 5px 5px 5px #FF0000; }

尝试一下 »


CSS3 box-shadow属性

CSS3 中 CSS3 box-shadow 属性适用于盒子阴影

实例

div { box-shadow: 10px 10px 5px #888888; }

尝试一下 »


接下来给阴影添加颜色

实例

div { box-shadow: 10px 10px grey; }

尝试一下 »


接下来给阴影添加一个模糊效果

实例

div { box-shadow: 10px 10px 5px grey; }

尝试一下 »


你也可以在 ::before 和 ::after 两个伪元素中添加阴影效果

实例

#boxshadow { position: relative; b ox-shadow: 1px 2px 4px rgba(0, 0, 0, .5); pa dding: 10px; bac kground: white; } #boxshadow img { width: 100%; border: 1px solid #8a4419; border-style: inset; } #boxshadow::after { content: ''; position: absolute; z-index: -1; /* hide shadow behind image */ box-shadow: 0 15px 20px rgba(0, 0, 0, 0.3); width: 70%; left: 15%; /* one half of the remaining 30% */ height: 100px; bottom: 0; }

尝试一下 »


阴影的一个使用特例是卡片效果

实例

div.card { width: 250px; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); text-align: center; }

文字卡片 » 图片卡片 »


CSS3 Text Overflow属性

CSS3文本溢出属性指定应向用户如何显示溢出内容

实例

p.test1 { white-space: nowrap; width: 200px; border: 1px solid #000000; overflow: hidden; text-overflow: clip; } p.test2 { white-space: nowrap; width: 200px; border: 1px solid #000000; overflow: hidden; text-overflow: ellipsis; }

尝试一下 »


CSS3的换行

如果某个单词太长,不适合在一个区域内,它扩展到外面:

CSS3中,自动换行属性允许您强制文本换行 - 即使这意味着分裂它中间的一个字:

CSS代码如下:

OperaSafariChromeFirefoxInternet Explorer

实例

允许长文本换行:

p {word-wrap:break-word;}

尝试一下 »


CSS3 单词拆分换行

CSS3 单词拆分换行属性指定换行规则:

CSS代码如下:

实例

p.test1 { word-break: keep-all; } p.test2 { word-break: break-all; }

尝试一下 »


新文本属性

属性 描述 CSS
hanging-punctuation 规定标点字符是否位于线框之外。 3
punctuation-trim 规定是否对标点字符进行修剪。 3
text-align-last 设置如何对齐最后一行或紧挨着强制换行符之前的行。 3
text-emphasis 向元素的文本应用重点标记以及重点标记的前景色。 3
text-justify 规定当 text-align 设置为 "justify" 时所使用的对齐方法。 3
text-outline 规定文本的轮廓。 3
text-overflow 规定当文本溢出包含元素时发生的事情。 3
text-shadow 向文本添加阴影。 3
text-wrap 规定文本的换行规则。 3
word-break 规定非中日韩文本的换行规则。 3
word-wrap 允许对长的不可分割的单词进行分割并换行到下一行。 3

1 篇笔记 写笔记

  1. #1

       芙妹不开心

      177***7318@qq.com

    74

    写 box-shadow 的依次顺序为:

    h-shadow   v-shadow   blur   spread   color   insect
    
    水平阴影    垂直阴影   模糊    阴影尺寸  颜色   外阴影转到内阴影 
    芙妹不开心

       芙妹不开心

      177***7318@qq.com

    1年前 (2018-12-09)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 字体


With CSS3, web designers are no longer forced to use only web-safe fonts

CSS3 @font-face 规则

使用以前 CSS 的版本,网页设计师不得不使用用户计算机上已经安装的字体。

使用 CSS3,网页设计师可以使用他/她喜欢的任何字体。

当你发现您要使用的字体文件时,只需简单的将字体文件包含在网站中,它会自动下载给需要的用户。

您所选择的字体在新的 CSS3 版本有关于 @font-face 规则描述。

您"自己的"的字体是在 CSS3 @font-face 规则中定义的。


浏览器支持

表格中的数字表示支持该属性的第一个浏览器版本号。

属性
@font-face 4.0 9.0 3.5 3.2 10.0

Internet Explorer 9+, Firefox, Chrome, Safari, 和 Opera 支持 WOFF (Web Open Font Format) 字体.

Firefox, Chrome, Safari, 和 Opera 支持 .ttf(True Type字体)和.otf(OpenType)字体字体类型)。

Chrome, Safari 和 Opera 也支持 SVG 字体/折叠.

Internet Explorer 同样支持 EOT (Embedded OpenType) 字体.

注意: Internet Explorer 8 以及更早的版本不支持新的 @font-face 规则。


使用您需要的字体

在新的 @font-face 规则中,您必须首先定义字体的名称(比如 myFirstFont),然后指向该字体文件。

lamp 提示:URL请使用小写字母的字体,大写字母在IE中会产生意外的结果

如需为 HTML 元素使用字体,请通过 font-family 属性来引用字体的名称 (myFirstFont):

OperaSafariChromeFirefoxInternet Explorer

实例

<style> @font-face { font-family: myFirstFont; src: url(sansation_light.woff); } div { font-family:myFirstFont; } </style>

尝试一下 »


使用粗体文本

您必须添加另一个包含粗体文字的@font-face规则:

OperaSafariChromeFirefoxInternet Explorer

实例

@font-face { font-family: myFirstFont; src: url(sansation_bold.woff); font-weight:bold; }

尝试一下 »

该文件"Sansation_Bold.ttf"是另一种字体文件,包含Sansation字体的粗体字。

浏览器使用这一文本的字体系列"myFirstFont"时应该呈现为粗体。

这样你就可以有许多相同的字体@font-face的规则。


CSS3 字体描述

下表列出了所有的字体描述和里面的@font-face规则定义:

描述符 描述
font-family name 必需。规定字体的名称。
src URL 必需。定义字体文件的 URL。
font-stretch
  • normal
  • condensed
  • ultra-condensed
  • extra-condensed
  • semi-condensed
  • expanded
  • semi-expanded
  • extra-expanded
  • ultra-expanded
可选。定义如何拉伸字体。默认是 "normal"。
font-style
  • normal
  • italic
  • oblique
可选。定义字体的样式。默认是 "normal"。
font-weight
  • normal
  • bold
  • 100
  • 200
  • 300
  • 400
  • 500
  • 600
  • 700
  • 800
  • 900
可选。定义字体的粗细。默认是 "normal"。
unicode-range unicode-range 可选。定义字体支持的 UNICODE 字符范围。默认是 "U+0-10FFFF"。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 2D 转换


CSS3 转换

CSS3 转换可以对元素进行移动、缩放、转动、拉长或拉伸。

CSS3 Transforms

它是如何工作?

转换的效果是让某个元素改变形状,大小和位置。

您可以使用 2D 或 3D 转换来转换您的元素。

鼠标移动到以下元素上,查看 2D 和 3D 的转换效果:

2D 转换
3D 转换

浏览器支持

表格中的数字表示支持该属性的第一个浏览器版本号。

紧跟在 -webkit-, -ms- 或 -moz- 前的数字为支持该前缀属性的第一个浏览器版本号。

属性
transform 36.0
4.0 -webkit-
10.0
9.0 -ms-
16.0
3.5 -moz-
3.2 -webkit- 23.0
15.0 -webkit-
12.1
10.5 -o-
transform-origin
(two-value syntax)
36.0
4.0 -webkit-
10.0
9.0 -ms-
16.0
3.5 -moz-
3.2 -webkit- 23.0
15.0 -webkit-
12.1
10.5 -o-

Internet Explorer 10, Firefox, 和 Opera支持transform 属性.

Chrome 和 Safari 要求前缀 -webkit- 版本.

注意: Internet Explorer 9 要求前缀 -ms- 版本.


2D 转换

在本章您将了解2D变换方法:

  • translate()
  • rotate()
  • scale()
  • skew()
  • matrix()

在下一章中您将了解3D转换。

OperaSafariChromeFirefoxInternet Explorer

实例

div { transform: rotate(30deg); -ms-transform: rotate(30deg); /* IE 9 */ -webkit-transform: rotate(30deg); /* Safari and Chrome */ }

尝试一下 »


translate() 方法

Translate

translate()方法,根据左(X轴)和顶部(Y轴)位置给定的参数,从当前元素位置移动。

OperaSafariChromeFirefoxInternet Explorer

实例

div { transform: translate(50px,100px); -ms-transform: translate(50px,100px); /* IE 9 */ -webkit-transform: translate(50px,100px); /* Safari and Chrome */ }

尝试一下 »

translate值(50px,100px)是从左边元素移动50个像素,并从顶部移动100像素。


rotate() 方法

Rotate

rotate()方法,在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转。

OperaSafariChromeFirefoxInternet Explorer

实例

div { transform: rotate(30deg); -ms-transform: rotate(30deg); /* IE 9 */ -webkit-transform: rotate(30deg); /* Safari and Chrome */ }

尝试一下 »

rotate值(30deg)元素顺时针旋转30度。


scale() 方法

Scale

scale()方法,该元素增加或减少的大小,取决于宽度(X轴)和高度(Y轴)的参数:

OperaSafariChromeFirefoxInternet Explorer

实例

-ms-transform:scale(2,3); /* IE 9 */ -webkit-transform: scale(2,3); /* Safari */ transform: scale(2,3); /* 标准语法 */

尝试一下 »

scale(2,3)转变宽度为原来的大小的2倍,和其原始大小3倍的高度。


skew() 方法

语法

transform:skew(<angle> [,<angle>]);

包含两个参数值,分别表示X轴和Y轴倾斜的角度,如果第二个参数为空,则默认为0,参数为负表示向相反方向倾斜。

  • skewX(<angle>);表示只在X轴(水平方向)倾斜。
  • skewY(<angle>);表示只在Y轴(垂直方向)倾斜。
OperaSafariChromeFirefoxInternet Explorer

实例

div { transform: skew(30deg,20deg); -ms-transform: skew(30deg,20deg); /* IE 9 */ -webkit-transform: skew(30deg,20deg); /* Safari and Chrome */ }

尝试一下 »

skew(30deg,20deg) 元素在X轴和Y轴上倾斜20度30度。


matrix() 方法

Rotate

matrix()方法和2D变换方法合并成一个。

matrix 方法有六个参数,包含旋转,缩放,移动(平移)和倾斜功能。

OperaSafariChromeFirefoxInternet Explorer

实例

利用matrix()方法旋转div元素30°

div { transform:matrix(0.866,0.5,-0.5,0.866,0,0); -ms-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* IE 9 */ -webkit-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Safari and Chrome */ }

尝试一下 »


新转换属性

以下列出了所有的转换属性:

Property 描述 CSS
transform 适用于2D或3D转换的元素 3
transform-origin 允许您更改转化元素位置 3

2D 转换方法

函数 描述
matrix(n,n,n,n,n,n) 定义 2D 转换,使用六个值的矩阵。
translate(x,y) 定义 2D 转换,沿着 X 和 Y 轴移动元素。
translateX(n) 定义 2D 转换,沿着 X 轴移动元素。
translateY(n) 定义 2D 转换,沿着 Y 轴移动元素。
scale(x,y) 定义 2D 缩放转换,改变元素的宽度和高度。
scaleX(n) 定义 2D 缩放转换,改变元素的宽度。
scaleY(n) 定义 2D 缩放转换,改变元素的高度。
rotate(angle) 定义 2D 旋转,在参数中规定角度。
skew(x-angle,y-angle) 定义 2D 倾斜转换,沿着 X 和 Y 轴。
skewX(angle) 定义 2D 倾斜转换,沿着 X 轴。
skewY(angle) 定义 2D 倾斜转换,沿着 Y 轴。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 3D 转换


3D 转换

CSS3 允许您使用 3D 转换来对元素进行格式化。

在本章中,您将学到其中的一些 3D 转换方法:

  • rotateX()
  • rotateY()

点击下面的元素,来查看 2D 转换与 3D 转换之间的不同之处:

2D rotate
3D rotate


浏览器支持

表格中的数字表示支持该属性的第一个浏览器版本号。

紧跟在 -webkit-, -ms- 或 -moz- 前的数字为支持该前缀属性的第一个浏览器版本号。

属性
transform 36.0
12.0 -webkit-
10.0 16.0
10.0 -moz-
4.0 -webkit- 23.0
15.0 -webkit-
transform-origin
(three-value syntax)
36.0
12.0 -webkit-
10.0 16.0
10.0 -moz-
4.0 -webkit- 23.0
15.0 -webkit-
transform-style 36.0
12.0 -webkit-
11.0 16.0
10.0 -moz-
4.0 -webkit- 23.0
15.0 -webkit-
perspective 36.0
12.0 -webkit-
10.0 16.0
10.0 -moz-
4.0 -webkit- 23.0
15.0 -webkit-
perspective-origin 36.0
12.0 -webkit-
10.0 16.0
10.0 -moz-
4.0 -webkit- 23.0
15.0 -webkit-
backface-visibility 36.0
12.0 -webkit-
10.0 16.0
10.0 -moz-
4.0 -webkit- 23.0
15.0 -webkit-

rotateX() 方法

Rotate X

rotateX()方法,围绕其在一个给定度数X轴旋转的元素。

OperaSafariChromeFirefoxInternet Explorer

实例

div { transform: rotateX(120deg); -webkit-transform: rotateX(120deg); /* Safari 与 Chrome */ }

尝试一下 »


rotateY() 方法

Rotate Y

rotateY()方法,围绕其在一个给定度数Y轴旋转的元素。

OperaSafariChromeFirefoxInternet Explorer

实例

div { transform: rotateY(130deg); -webkit-transform: rotateY(130deg); /* Safari 与 Chrome */ }

尝试一下 »


转换属性

下表列出了所有的转换属性:

属性 描述 CSS
transform 向元素应用 2D 或 3D 转换。 3
transform-origin 允许你改变被转换元素的位置。 3
transform-style 规定被嵌套元素如何在 3D 空间中显示。 3
perspective 规定 3D 元素的透视效果。 3
perspective-origin 规定 3D 元素的底部位置。 3
backface-visibility 定义元素在不面对屏幕时是否可见。 3

3D 转换方法

函数 描述
matrix3d(n,n,n,n,n,n,
n,n,n,n,n,n,n,n,n,n)
定义 3D 转换,使用 16 个值的 4x4 矩阵。
translate3d(x,y,z) 定义 3D 转化。
translateX(x) 定义 3D 转化,仅使用用于 X 轴的值。
translateY(y) 定义 3D 转化,仅使用用于 Y 轴的值。
translateZ(z) 定义 3D 转化,仅使用用于 Z 轴的值。
scale3d(x,y,z) 定义 3D 缩放转换。
scaleX(x) 定义 3D 缩放转换,通过给定一个 X 轴的值。
scaleY(y) 定义 3D 缩放转换,通过给定一个 Y 轴的值。
scaleZ(z) 定义 3D 缩放转换,通过给定一个 Z 轴的值。
rotate3d(x,y,z,angle) 定义 3D 旋转。
rotateX(angle) 定义沿 X 轴的 3D 旋转。
rotateY(angle) 定义沿 Y 轴的 3D 旋转。
rotateZ(angle) 定义沿 Z 轴的 3D 旋转。
perspective(n) 定义 3D 转换元素的透视视图。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 过渡


CSS3 过渡

CSS3中,我们为了添加某种效果可以从一种样式转变到另一个的时候,无需使用Flash动画或JavaScript。用鼠标移过下面的元素:


用鼠标移过下面的元素:

CSS3
过渡

浏览器支持

表格中的数字表示支持该属性的第一个浏览器版本号。

紧跟在 -webkit-, -ms- 或 -moz- 前的数字为支持该前缀属性的第一个浏览器版本号。

属性
transition 26.0
4.0 -webkit-
10.0 16.0
4.0 -moz-
6.1
3.1 -webkit-
12.1
10.5 -o-
transition-delay 26.0
4.0 -webkit-
10.0 16.0
4.0 -moz-
6.1
3.1 -webkit-
12.1
10.5 -o-
transition-duration 26.0
4.0 -webkit-
10.0 16.0
4.0 -moz-
6.1
3.1 -webkit-
12.1
10.5 -o-
transition-property 26.0
4.0 -webkit-
10.0 16.0
4.0 -moz-
6.1
3.1 -webkit-
12.1
10.5 -o-
transition-timing-function 26.0
4.0 -webkit-
10.0 16.0
4.0 -moz-
6.1
3.1 -webkit-
12.1
10.5 -o-

它是如何工作?

CSS3 过渡是元素从一种样式逐渐改变为另一种的效果。

要实现这一点,必须规定两项内容:

  • 指定要添加效果的CSS属性
  • 指定效果的持续时间。
OperaSafariChromeFirefoxInternet Explorer

实例

应用于宽度属性的过渡效果,时长为 2 秒:

div { transition: width 2s; -webkit-transition: width 2s; /* Safari */ }

注意: 如果未指定的期限,transition将没有任何效果,因为默认值是0。

指定的CSS属性的值更改时效果会发生变化。一个典型CSS属性的变化是用户鼠标放在一个元素上时:

OperaSafariChromeFirefoxInternet Explorer

实例

规定当鼠标指针悬浮(:hover)于 <div>元素上时:

div:hover { width:300px; }

尝试一下 »

注意: 当鼠标光标移动到该元素时,它逐渐改变它原有样式


多项改变

要添加多个样式的变换效果,添加的属性由逗号分隔:

OperaSafariChromeFirefoxInternet Explorer

实例

添加了宽度,高度和转换效果:

div { transition: width 2s, height 2s, transform 2s; -webkit-transition: width 2s, height 2s, -webkit-transform 2s; }

尝试一下 »


过渡属性

下表列出了所有的过渡属性:

属性 描述 CSS
transition 简写属性,用于在一个属性中设置四个过渡属性。 3
transition-property 规定应用过渡的 CSS 属性的名称。 3
transition-duration 定义过渡效果花费的时间。默认是 0。 3
transition-timing-function 规定过渡效果的时间曲线。默认是 "ease"。 3
transition-delay 规定过渡效果何时开始。默认是 0。 3

下面的两个例子设置所有过渡属性:

OperaSafariChromeFirefoxInternet Explorer

实例

在一个例子中使用所有过渡属性:

div { transition-property: width; transition-duration: 1s; transition-timing-function: linear; transition-delay: 2s; /* Safari */ -webkit-transition-property:width; -webkit-transition-duration:1s; -webkit-transition-timing-function:linear; -webkit-transition-delay:2s; }

尝试一下 »

OperaSafariChromeFirefoxInternet Explorer

实例

与上面的例子相同的过渡效果,但是使用了简写的 transition 属性:

div { transition: width 1s linear 2s; /* Safari */ -webkit-transition:width 1s linear 2s; }

尝试一下 »

2 篇笔记 写笔记

  1. #2

       纪晓岚乄

      870***614@qq.com

    79

    简单的鼠标悬浮过渡效果:

    div{
      width: 200px;
      height: 200px;
      background-color: #f00;
      transition: all 2s;
    }
    
    div:hover{
      background-color: #00f;
      transform: translateX(500px) translateY(500px) scale(0.8) rotate(360deg);
    }
    

    尝试一下 »

    纪晓岚乄

       纪晓岚乄

      870***614@qq.com

    1年前 (2019-01-05)
  2. #1

       小叶Little_Ye

      lit***ye233@foxmail.com

    0

    国内一些站点支持“黑幕”样式——表面上是全黑色的矩形条,将鼠标移动上去或选中矩形条就能看到其中的文字。

    以前一直在想这种效果怎么处理,本来考虑使用JavaScript,但是写起来很复杂;如若再考虑鼠标移动上去后的颜色过渡效果,更是困难重重。现在我们可以考虑使用CSS的过渡效果来处理。

    我们常见到的“黑幕”表面是这样的:

    鼠标移动后的效果是这样的:

    那么我们设计的思路如下:

    1) 背景颜色始终是黑色的;

    2) 字体颜色也是黑色的,只有在鼠标悬浮或被选中时逐渐变为白色。

    由此我们可以设计如下的代码:

    <p>这是测试<span class="mask">并且被掩盖的</span>文字!</p>
    <style>
    .mask {
        background-color: #252525;
        color: #252525;
        transition: color 0.5s;
    }
    
    .mask:hover {
        color: #ffffff;
    }
    </style>
    

    尝试一下 »

    小叶Little_Ye

       小叶Little_Ye

      lit***ye233@foxmail.com

    3天前

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 动画


CSS3 动画

CSS3 可以创建动画,它可以取代许多网页动画图像、Flash 动画和 JavaScript 实现的效果。


CSS3
动画

CSS3 @keyframes 规则

要创建 CSS3 动画,你需要了解 @keyframes 规则。

@keyframes 规则是创建动画。

@keyframes 规则内指定一个 CSS 样式和动画将逐步从目前的样式更改为新的样式。


浏览器支持

表格中的数字表示支持该属性的第一个浏览器版本号。

紧跟在 -webkit-, -ms- 或 -moz- 前的数字为支持该前缀属性的第一个浏览器版本号。

属性
@keyframes 43.0
4.0 -webkit-
10.0 16.0
5.0 -moz-
9.0
4.0 -webkit-
30.0
15.0 -webkit-
12.0 -o-
animation 43.0
4.0 -webkit-
10.0 16.0
5.0 -moz-
9.0
4.0 -webkit-
30.0
15.0 -webkit-
12.0 -o-

OperaSafariChromeFirefoxInternet Explorer

实例

@keyframes myfirst { from {background: red;} to {background: yellow;} } @-webkit-keyframes myfirst /* Safari 与 Chrome */ { from {background: red;} to {background: yellow;} }


CSS3 动画

当在 @keyframes 创建动画,把它绑定到一个选择器,否则动画不会有任何效果。

指定至少这两个CSS3的动画属性绑定向一个选择器:

  • 规定动画的名称
  • 规定动画的时长
OperaSafariChromeFirefoxInternet Explorer

实例

把 "myfirst" 动画捆绑到 div 元素,时长:5 秒:

div { animation: myfirst 5s; -webkit-animation: myfirst 5s; /* Safari 与 Chrome */ }

尝试一下 »

注意: 您必须定义动画的名称和动画的持续时间。如果省略的持续时间,动画将无法运行,因为默认值是0。


CSS3动画是什么?

动画是使元素从一种样式逐渐变化为另一种样式的效果。

您可以改变任意多的样式任意多的次数。

请用百分比来规定变化发生的时间,或用关键词 "from" 和 "to",等同于 0% 和 100%。

0% 是动画的开始,100% 是动画的完成。

为了得到最佳的浏览器支持,您应该始终定义 0% 和 100% 选择器。

OperaSafariChromeFirefoxInternet Explorer

实例

当动画为 25% 及 50% 时改变背景色,然后当动画 100% 完成时再次改变:

@keyframes myfirst { 0% {background: red;} 25% {background: yellow;} 50% {background: blue;} 100% {background: green;} } @-webkit-keyframes myfirst /* Safari 与 Chrome */ { 0% {background: red;} 25% {background: yellow;} 50% {background: blue;} 100% {background: green;} }

尝试一下 »

OperaSafariChromeFirefoxInternet Explorer

实例

改变背景色和位置:

@keyframes myfirst { 0% {background: red; left:0px; top:0px;} 25% {background: yellow; left:200px; top:0px;} 50% {background: blue; left:200px; top:200px;} 75% {background: green; left:0px; top:200px;} 100% {background: red; left:0px; top:0px;} } @-webkit-keyframes myfirst /* Safari 与 Chrome */ { 0% {background: red; left:0px; top:0px;} 25% {background: yellow; left:200px; top:0px;} 50% {background: blue; left:200px; top:200px;} 75% {background: green; left:0px; top:200px;} 100% {background: red; left:0px; top:0px;} }

尝试一下 »


CSS3的动画属性

下面的表格列出了 @keyframes 规则和所有动画属性:

属性 描述 CSS
@keyframes 规定动画。 3
animation 所有动画属性的简写属性,除了 animation-play-state 属性。 3
animation-name 规定 @keyframes 动画的名称。 3
animation-duration 规定动画完成一个周期所花费的秒或毫秒。默认是 0。 3
animation-timing-function 规定动画的速度曲线。默认是 "ease"。 3
animation-fill-mode 规定当动画不播放时(当动画完成时,或当动画有一个延迟未开始播放时),要应用到元素的样式。 3
animation-delay 规定动画何时开始。默认是 0。 3
animation-iteration-count 规定动画被播放的次数。默认是 1。 3
animation-direction 规定动画是否在下一周期逆向地播放。默认是 "normal"。 3
animation-play-state 规定动画是否正在运行或暂停。默认是 "running"。 3

下面两个例子设置所有动画属性:

OperaSafariChromeFirefoxInternet Explorer

实例

运行myfirst动画,设置所有的属性:

div { animation-name: myfirst; animation-duration: 5s; animation-timing-function: linear; animation-delay: 2s; animation-iteration-count: infinite; animation-direction: alternate; animation-play-state: running; /* Safari 与 Chrome: */ -webkit-animation-name: myfirst; -webkit-animation-duration: 5s; -webkit-animation-timing-function: linear; -webkit-animation-delay: 2s; -webkit-animation-iteration-count: infinite; -webkit-animation-direction: alternate; -webkit-animation-play-state: running; }

尝试一下 »

OperaSafariChromeFirefoxInternet Explorer

实例

与上面的动画相同,但是使用了简写的动画 animation 属性:

div { animation: myfirst 5s linear 2s infinite alternate; /* Safari 与 Chrome: */ -webkit-animation: myfirst 5s linear 2s infinite alternate; }

尝试一下 »

3 篇笔记 写笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 多列

CSS3 可以将文本内容设计成像报纸一样的多列布局,如下实例:

菜鸟教程 - 学的不仅是技术,更是梦想!菜鸟教程(www.runoob.com)提供了最全的编程技术基础教程, 介绍了HTML、CSS、Javascript、Python,Java,Ruby,C,PHP , MySQL等各种编程语言的基础知识。 同时本站中也提供了大量的在线实例,通过实例,您可以更好的学习编程。


浏览器支持

表格中的数字表示支持该方法的第一个浏览器的版本号。

紧跟在数字后面的 -webkit- 或 -moz- 为指定浏览器的前缀。

属性
column-count 4.0 -webkit- 10.0 2.0 -moz- 3.1 -webkit- 15.0 -webkit-
11.1
column-gap 4.0 -webkit- 10.0 2.0 -moz- 3.1 -webkit- 15.0 -webkit-
11.1
column-rule 4.0 -webkit- 10.0 2.0 -moz- 3.1 -webkit- 15.0 -webkit-
11.1
column-rule-color 4.0 -webkit- 10.0 2.0 -moz- 3.1 -webkit- 15.0 -webkit
11.1
column-rule-style 4.0 -webkit- 10.0 2.0 -moz- 3.1 -webkit- 15.0 -webkit
11.1
column-rule-width 4.0 -webkit- 10.0 2.0 -moz- 3.1 -webkit- 15.0 -webkit
11.1
column-width 4.0 -webkit- 10.0 2.0 -moz- 3.1 -webkit- 15.0 -webkit
11.1

CSS3 多列属性

本章节我们将学习以下几个 CSS3 的多列属性:

  • column-count
  • column-gap
  • column-rule-style
  • column-rule-width
  • column-rule-color
  • column-rule
  • column-span
  • column-width

CSS3 创建多列

column-count 属性指定了需要分割的列数。

以下实例将 <div> 元素中的文本分为 3 列:

实例

div {
    -webkit-column-count: 3; /* Chrome, Safari, Opera */
    -moz-column-count: 3; /* Firefox */
    column-count: 3;
}

尝试一下 »

CSS3 多列中列与列间的间隙

column-gap 属性指定了列与列间的间隙。

以下实例指定了列与列间的间隙为 40 像素:

实例

div {
    -webkit-column-gap: 40px; /* Chrome, Safari, Opera */
    -moz-column-gap: 40px; /* Firefox */
    column-gap: 40px;
}

尝试一下 »

CSS3 列边框

column-rule-style 属性指定了列与列间的边框样式:

实例

div {
    -webkit-column-rule-style: solid; /* Chrome, Safari, Opera */
    -moz-column-rule-style: solid; /* Firefox */
    column-rule-style: solid;
}

尝试一下 »

column-rule-width 属性指定了两列的边框厚度:

实例

div {
    -webkit-column-rule-width: 1px; /* Chrome, Safari, Opera */
    -moz-column-rule-width: 1px; /* Firefox */
    column-rule-width: 1px;
}

尝试一下 »

column-rule-color 属性指定了两列的边框颜色:

实例

div {
    -webkit-column-rule-color: lightblue; /* Chrome, Safari, Opera */
    -moz-column-rule-color: lightblue; /* Firefox */
    column-rule-color: lightblue;
}

尝试一下 »

column-rule 属性是 column-rule-* 所有属性的简写。

以下实例设置了列直接的边框的厚度,样式及颜色:

实例

div {
    -webkit-column-rule: 1px solid lightblue; /* Chrome, Safari, Opera */
    -moz-column-rule: 1px solid lightblue; /* Firefox */
    column-rule: 1px solid lightblue;
}

尝试一下 »

指定元素跨越多少列

以下实例指定 <h2> 元素跨越所有列:

实例

h2 {
    -webkit-column-span: all; /* Chrome, Safari, Opera */
    column-span: all;
}

尝试一下 »

指定列的宽度

column-width 属性指定了列的宽度。

实例

div {
    -webkit-column-width: 100px; /* Chrome, Safari, Opera */
    column-width: 100px;
}

尝试一下 »

CSS3 多列属性

下表列出了所有 CSS3 的多列属性:

属性 描述
column-count 指定元素应该被分割的列数。
column-fill 指定如何填充列
column-gap 指定列与列之间的间隙
column-rule 所有 column-rule-* 属性的简写
column-rule-color 指定两列间边框的颜色
column-rule-style 指定两列间边框的样式
column-rule-width 指定两列间边框的厚度
column-span 指定元素要跨越多少列
column-width 指定列的宽度
columns 设置 column-width 和 column-count 的简写

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 用户界面


CSS3 用户界面

在 CSS3 中, 增加了一些新的用户界面特性来调整元素尺寸,框尺寸和外边框。

在本章中,您将了解以下的用户界面属性:

  • resize
  • box-sizing
  • outline-offset

浏览器支持

表格中的数字表示支持该属性的第一个浏览器版本号。

紧跟在 -webkit-, -ms- 或 -moz- 前的数字为支持该前缀属性的第一个浏览器版本号。

属性
resize 4.0 不兼容 5.0
4.0 -moz-
4.0 15.0
box-sizing 10.0
4.0 -webkit-
8.0 29.0
2.0 -moz-
5.1
3.1 -webkit-
9.5
outline-offset 4.0 不兼容 5.0
4.0 -moz-
4.0 9.5

CSS3 调整尺寸(Resizing)

CSS3中,resize属性指定一个元素是否应该由用户去调整大小。

这个 div 元素由用户调整大小。 (在 Firefox 4+, Chrome, 和 Safari中)

CSS代码如下:

OperaSafariChromeFirefoxInternet Explorer

实例

由用户指定一个div元素尺寸大小:

div { resize:both; overflow:auto; }

尝试一下 »


CSS3 方框大小调整(Box Sizing)

box-sizing 属性允许您以确切的方式定义适应某个区域的具体内容。

OperaSafariChromeFirefoxInternet Explorer

实例

规定两个并排的带边框方框:

div { box-sizing:border-box; -moz-box-sizing:border-box; /* Firefox */ width:50%; float:left; }

尝试一下 »


CSS3 外形修饰(outline-offset )

outline-offset 属性对轮廓进行偏移,并在超出边框边缘的位置绘制轮廓。

轮廓与边框有两点不同:

  • 轮廓不占用空间
  • 轮廓可能是非矩形
这个 div 在边框之外 15 像素处有一个轮廓。

CSS 代码如下:

OperaSafariChromeFirefoxInternet Explorer

实例

规定边框边缘之外 15 像素处的轮廓:

div { border:2px solid black; outline:2px solid red; outline-offset:15px; }

尝试一下 »


新的用户界面特性

属性 说明 CSS
appearance 允许您使一个元素的外观像一个标准的用户界面元素 3
box-sizing 允许你以适应区域而用某种方式定义某些元素 3
icon 为创作者提供了将元素设置为图标等价物的能力。 3
nav-down 指定在何处使用箭头向下导航键时进行导航 3
nav-index 指定一个元素的Tab的顺序 3
nav-left 指定在何处使用左侧的箭头导航键进行导航 3
nav-right 指定在何处使用右侧的箭头导航键进行导航 3
nav-up 指定在何处使用箭头向上导航键时进行导航 3
outline-offset 外轮廓修饰并绘制超出边框的边缘 3
resize 指定一个元素是否是由用户调整大小 3

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 图片

本章节将为大家介绍如何使用 CSS 来布局图片。


圆角图片

实例

圆角图片:

img {
    border-radius: 8px;
}

尝试一下 »

实例

椭圆形图片:

img {
    border-radius: 50%;
}

尝试一下 »

缩略图

我们使用 border 属性来创建缩略图。

实例

img {
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 5px;
}

<img src="paris.jpg" alt="Paris">

尝试一下 »

实例

a {
    display: inline-block;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding: 5px;
    transition: 0.3s;
}

a:hover {
    box-shadow: 0 0 2px 1px rgba
    (0, 140, 186, 0.5);

}

<a href="paris.jpg">
  <img src="paris.jpg" alt="Paris">
</a>

尝试一下 »

响应式图片

响应式图片会自动适配各种尺寸的屏幕。

实例中,你可以通过重置浏览器大小查看效果:

Norway

如果你需要自由缩放图片,且图片放大的尺寸不大于其原始的最大值,则可使用以下代码:

实例

img {
    max-width: 100%;
    height: auto;
}

尝试一下 »

提示: Web 响应式设计更多内容可以参考 CSS 响应式设计教程


图片文本

如何定位图片文本:

实例

Norway
左下角
左上角
右上角
右下角
居中

尝试一下:

左上角 » 右上角 » 左下角 » 右下角 » 居中 »

卡片式图片

实例

div.polaroid {
    width: 80%;
    background-color: white;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

img {width: 100%}

div.container {
    text-align: center;
    padding: 10px 20px;
}

尝试一下 »

图片滤镜

CSS filter 属性用为元素添加可视效果 (例如:模糊与饱和度) 。

注意: Internet Explorer 或 Safari 5.1 (及更早版本) 不支持该属性。

实例

修改所有图片的颜色为黑白 (100% 灰度):

img {
    -webkit-filter: grayscale(100%); /* Chrome, Safari, Opera */
    filter: grayscale(100%);
}

尝试一下 »

提示: 访问 CSS 滤镜参考手册 查看更多内容。


响应式图片相册

实例

.responsive {
    padding: 0 6px;
    float: left;
    width: 24.99999%;
}

@media only screen and (max-width: 700px){
    .responsive {
        width: 49.99999%;
        margin: 6px 0;
    }
}

@media only screen and (max-width: 500px){
    .responsive {
        width: 100%;
    }
}

尝试一下 »

图片 Modal(模态)

本实例演示了如何结合 CSS 和 JavaScript 来一起渲染图片。

首先,我们使用 CSS 来创建 modal 窗口 (对话框), 默认是隐藏的。

然后,我们使用 JavaScript 来显示模态窗口,当我们点击图片时,图片会在弹出的窗口中显示:

实例

// 获取模态窗口
var modal = document.getElementById('myModal');

// 获取图片模态框,alt 属性作为图片弹出中文本描述
var img = document.getElementById('myImg');
var modalImg = document.getElementById("img01");
var captionText = document.getElementById("caption");
img.onclick = function(){
    modal.style.display = "block";
    modalImg.src = this.src;
    modalImg.alt = this.alt;
    captionText.innerHTML = this.alt;
}

// Get the <span> element that closes the modal
var span = document.getElementsByClassName("close")[0];

// When the user clicks on <span> (x), close the modal
span.onclick = function() {
    modal.style.display = "none";
}

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 按钮

本章节我们为大家介绍使用 CSS 来制作按钮。


基本按钮样式

CSS 实例

.button {
    background-color: #4CAF50; /* Green */
    border: none;
    color: white;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
}

尝试一下 »

按钮颜色

我们可以使用 background-color 属性来设置按钮颜色:

CSS 实例

.button1 {background-color: #4CAF50;} /* Green */
.button2 {background-color: #008CBA;} /* Blue */
.button3 {background-color: #f44336;} /* Red */
.button4 {background-color: #e7e7e7; color: black;} /* Gray */
.button5 {background-color: #555555;} /* Black */

尝试一下 »

按钮大小

我们可以使用 font-size 属性来设置按钮大小:

CSS 实例

.button1 {font-size: 10px;}
.button2 {font-size: 12px;}
.button3 {font-size: 16px;}
.button4 {font-size: 20px;}
.button5 {font-size: 24px;}

尝试一下 »

圆角按钮

我们可以使用 border-radius 属性来设置圆角按钮:

CSS 实例

.button1 {border-radius: 2px;}
.button2 {border-radius: 4px;}
.button3 {border-radius: 8px;}
.button4 {border-radius: 12px;}
.button5 {border-radius: 50%;}

尝试一下 »

按钮边框颜色

我们可以使用 border 属性设置按钮边框颜色:

CSS 实例

.button1 {
    background-color: white;
    color: black;
    border: 2px solid #4CAF50; /* Green */
}
...

尝试一下 »

鼠标悬停按钮


我们可以使用 :hover 选择器来修改鼠标悬停在按钮上的样式。

提示: 我们可以使用 transition-duration 属性来设置 "hover" 效果的速度:

CSS 实例

.button {
    -webkit-transition-duration: 0.4s; /* Safari */
    transition-duration: 0.4s;
}

.button:hover {
    background-color: #4CAF50; /* Green */
    color: white;
}
...

尝试一下 »

按钮阴影

我们可以使用 box-shadow 属性来为按钮添加阴影:

CSS 实例

.button1 {
    box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);
}

.button2:hover {
    box-shadow: 0 12px 16px 0 rgba(0,0,0,0.24), 0 17px 50px 0 rgba(0,0,0,0.19);
}

尝试一下 »

禁用按钮

我们可以使用 opacity 属性为按钮添加透明度 (看起来类似 "disabled" 属性效果)。

提示: 我们可以添加 cursor 属性并设置为 "not-allowed" 来设置一个禁用的图片:

CSS 实例

.disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

尝试一下 »

按钮宽度


默认情况下,按钮的大小有按钮上的文本内容决定( 根据文本内容匹配长度 )。 我们可以使用 width 属性来设置按钮的宽度:

提示: 如果要设置固定宽度可以使用像素 (px) 为单位,如果要设置响应式的按钮可以设置为百分比。

CSS 实例

.button1 {width: 250px;}
.button2 {width: 50%;}
.button3 {width: 100%;}

尝试一下 »

按钮组


移除外边距并添加 float:left 来设置按钮组:

CSS 实例

.button {
    float: left;
}

尝试一下 »

带边框按钮组


我们可以使用 border 属性来设置带边框的按钮组:

CSS 实例

.button {
    float: left;
    border: 1px solid green
}

尝试一下 »

按钮动画

CSS 实例

鼠标移动到按钮上后添加箭头标记:


尝试一下 »

CSS 实例

点击时添加 "波纹" 效果:


尝试一下 »

CSS 实例

点击时添加 "压下" 效果:


尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS 分页实例

本章节我们将为大家介绍如何通过使用 CSS 来创建分页的实例。


简单分页

如果你的网站有很多个页面,你就需要使用分页来为每个页面做导航。

以下实例演示了如何使用 HTML 和 CSS 来创建分页:

CSS 实例

ul.pagination {
    display: inline-block;
    padding: 0;
    margin: 0;
}

ul.pagination li {display: inline;}

ul.pagination li a {
    color: black;
    float: left;
    padding: 8px 16px;
    text-decoration: none;
}

尝试一下 »

点击及鼠标悬停分页样式

如果点击当前页,可以使用 .active 来设置当前页样式,鼠标悬停可以使用 :hover 选择器来修改样式:

CSS 实例

ul.pagination li a.active {
    background-color: #4CAF50;
    color: white;
}

ul.pagination li a:hover:not(.active) {background-color: #ddd;}

尝试一下 »

CSS 实例

ul.pagination li a.active {
    background-color: #4CAF50;
    color: white;
}

ul.pagination li a:hover:not(.active) {background-color: #ddd;}

尝试一下 »

圆角样式

可以使用 border-radius 属性为选中的页码来添加圆角样式:

CSS 实例

ul.pagination li a {
    border-radius: 5px;
}

ul.pagination li a.active {
    border-radius: 5px;
}

尝试一下 »

鼠标悬停过渡效果

我们可以通过添加 transition 属性来为鼠标移动到页码上时添加过渡效果:

CSS 实例

ul.pagination li a {
    transition: background-color .3s;
}

尝试一下 »

带边框分页

我们可以使用 border 属性来添加带边框分页:

CSS 实例

ul.pagination li a {
    border: 1px solid #ddd; /* Gray */
}

尝试一下 »

圆角边框

提示: 在第一个分页链接和最后一个分页链接添加圆角:

CSS 实例

.pagination li:first-child a {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.pagination li:last-child a {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
}

尝试一下 »

分页间隔

提示: 你可以使用 margin 属性来为每个页码直接添加空格:

CSS 实例

ul.pagination li a {
    margin: 0 4px; /* 0 对应的是头部与底部,可以修改它看看效果 */
}

尝试一下 »

分页字体大小

我们可以使用 font-size 属性来设置分页的字体大小:

CSS 实例

ul.pagination li a {
    font-size: 22px;
}

尝试一下 »

居中分页

如果要让分页居中,可以在容器元素上 (如 <div>) 添加 text-align:center 样式:

CSS 实例

div.center {
    text-align: center;
}

尝试一下 »

更多实例

CSS 实例


尝试一下 »

面包屑导航

另外一种导航为面包屑导航,实例如下:

CSS 实例

ul.breadcrumb {
    padding: 8px 16px;
    list-style: none;
    background-color: #eee;
}

ul.breadcrumb li {display: inline;}

ul.breadcrumb li+li:before {
    padding: 8px;
    color: black;
    content: "/\00a0";
}

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 框大小

CSS3 box-sizing 属性可以设置 width 和 height 属性中包含了 padding(内边距) 和 border(边框)。


浏览器支持

表格中的数字表示支持该属性的第一个浏览器的版本号。

紧跟在数字后面的 -webkit- 或 -moz- 为指定浏览器的前缀。

属性
box-sizing 10.0
4.0 -webkit-
8.0 29.0
2.0 -moz-
5.1
3.1 -webkit-
9.5

不使用 CSS3 box-sizing 属性

默认情况下,元素的宽度与高度计算方式如下:

width(宽) + padding(内边距) + border(边框) = 元素实际宽度

height(高) + padding(内边距) + border(边框) = 元素实际高度

这就意味着我们在设置元素的 width/height 时,元素真实展示的高度与宽度会更大(因为元素的边框与内边距也会计算在 width/height 中)。

这个是个较小的框 (width 为 300px ,height 为 100px)。

这个是个较大的框 (width 为 300px ,height 为 100px)。

以上两个 <div> 元素虽然宽度与高度设置一样,但真实展示的大小不一致,因为 div2 指定了内边距:

实例

.div1 {
    width: 300px;
    height: 100px;
    border: 1px solid blue;
}

.div2 {
    width: 300px;
    height: 100px;
    padding: 50px;
    border: 1px solid red;
}

尝试一下 »

使用这种方式如果想要获得较小的那个框且包含内边距,就不得不考虑到边框和内边距的宽度。

CSS3 的 box-sizing 属性很好的解决了这个问题。


使用 CSS3 box-sizing 属性

CSS3 box-sizing 属性在一个元素的 width 和 height 中包含 padding(内边距) 和 border(边框)。

如果在元素上设置了 box-sizing: border-box; 则 padding(内边距) 和 border(边框) 也包含在 width 和 height 中:

两个 div 现在是一样大小的!

菜鸟教程!

以下是两个 <div> 元素添加 box-sizing: border-box; 属性的简单实例。

实例

.div1 {
    width: 300px;
    height: 100px;
    border: 1px solid blue;
    box-sizing: border-box;
}

.div2 {
    width: 300px;
    height: 100px;
    padding: 50px;
    border: 1px solid red;
    box-sizing: border-box;
}

尝试一下 »

从结果上看 box-sizing: border-box; 效果更好,也正是很多开发人员需要的效果。

以下代码可以让所有元素以更直观的方式展示大小。很多浏览器已经支持 box-sizing: border-box; (但是并非所有 - 这就是为什么 input 和 text 元素设置了 width: 100%; 后的宽度却不一样)。

所有元素使用 box-sizing 是比较推荐的:

实例

* {
    box-sizing: border-box;
}

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 弹性盒子(Flex Box)

弹性盒子是 CSS3 的一种新的布局模式。

CSS3 弹性盒( Flexible Box 或 flexbox),是一种当页面需要适应不同的屏幕大小以及设备类型时确保元素拥有恰当的行为的布局方式。

引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的子元素进行排列、对齐和分配空白空间。


浏览器支持

表格中的数字表示支持该属性的第一个浏览器的版本号。

紧跟在数字后面的 -webkit- 或 -moz- 为指定浏览器的前缀。

属性
Basic support
(single-line flexbox)
29.0
21.0 -webkit-
11.0 22.0
18.0 -moz-
6.1 -webkit- 12.1 -webkit-
Multi-line flexbox 29.0
21.0 -webkit-
11.0 28.0 6.1 -webkit- 17.0
15.0 -webkit-
12.1

CSS3 弹性盒子内容

弹性盒子由弹性容器(Flex container)和弹性子元素(Flex item)组成。

弹性容器通过设置 display 属性的值为 flex 或 inline-flex将其定义为弹性容器。

弹性容器内包含了一个或多个弹性子元素。

注意: 弹性容器外及弹性子元素内是正常渲染的。弹性盒子只定义了弹性子元素如何在弹性容器内布局。

弹性子元素通常在弹性盒子内一行显示。默认情况每个容器只有一行。

以下元素展示了弹性子元素在一行内显示,从左到右:

实例

<!DOCTYPE html> <html> <head> <style>
.flex-container { display: -webkit-flex; display: flex; width: 400px; height: 250px; background-color: lightgrey; } .flex-item { background-color: cornflowerblue; width: 100px; height: 100px; margin: 10px; }
</style> </head> <body> <div class="flex-container"> <div class="flex-item">flex item 1</div> <div class="flex-item">flex item 2</div> <div class="flex-item">flex item 3</div> </div> </body> </html>

尝试一下 »

当然我们可以修改排列方式。

如果我们设置 direction 属性为 rtl (right-to-left),弹性子元素的排列方式也会改变,页面布局也跟着改变:

实例

body { direction: rtl; } .flex-container { display: -webkit-flex; display: flex; width: 400px; height: 250px; background-color: lightgrey; } .flex-item { background-color: cornflowerblue; width: 100px; height: 100px; margin: 10px; }

尝试一下 »


flex-direction

flex-direction 属性指定了弹性子元素在父容器中的位置。

语法

flex-direction: row | row-reverse | column | column-reverse

flex-direction的值有:

  • row:横向从左到右排列(左对齐),默认的排列方式。
  • row-reverse:反转横向排列(右对齐,从后往前排,最后一项排在最前面。
  • column:纵向排列。
  • column-reverse:反转纵向排列,从后往前排,最后一项排在最上面。

以下实例演示了 row-reverse 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-flex-direction: row-reverse; flex-direction: row-reverse; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 column 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-flex-direction: column; flex-direction: column; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 column-reverse 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-flex-direction: column-reverse; flex-direction: column-reverse; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

justify-content 属性

内容对齐(justify-content)属性应用在弹性容器上,把弹性项沿着弹性容器的主轴线(main axis)对齐。

justify-content 语法如下:

justify-content: flex-start | flex-end | center | space-between | space-around

各个值解析:

  • flex-start:

    弹性项目向行头紧挨着填充。这个是默认值。第一个弹性项的main-start外边距边线被放置在该行的main-start边线,而后续弹性项依次平齐摆放。

  • flex-end:

    弹性项目向行尾紧挨着填充。第一个弹性项的main-end外边距边线被放置在该行的main-end边线,而后续弹性项依次平齐摆放。

  • center:

    弹性项目居中紧挨着填充。(如果剩余的自由空间是负的,则弹性项目将在两个方向上同时溢出)。

  • space-between:

    弹性项目平均分布在该行上。如果剩余空间为负或者只有一个弹性项,则该值等同于flex-start。否则,第1个弹性项的外边距和行的main-start边线对齐,而最后1个弹性项的外边距和行的main-end边线对齐,然后剩余的弹性项分布在该行上,相邻项目的间隔相等。

  • space-around:

    弹性项目平均分布在该行上,两边留有一半的间隔空间。如果剩余空间为负或者只有一个弹性项,则该值等同于center。否则,弹性项目沿该行分布,且彼此间隔相等(比如是20px),同时首尾两边和弹性容器之间留有一半的间隔(1/2*20px=10px)。

效果图展示:

以下实例演示了 flex-end 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-justify-content: flex-end; justify-content: flex-end; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 center 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 space-between 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 space-around 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-justify-content: space-around; justify-content: space-around; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

align-items 属性

align-items 设置或检索弹性盒子元素在侧轴(纵轴)方向上的对齐方式。

语法

align-items: flex-start | flex-end | center | baseline | stretch

各个值解析:

  • flex-start:弹性盒子元素的侧轴(纵轴)起始位置的边界紧靠住该行的侧轴起始边界。
  • flex-end:弹性盒子元素的侧轴(纵轴)起始位置的边界紧靠住该行的侧轴结束边界。
  • center:弹性盒子元素在该行的侧轴(纵轴)上居中放置。(如果该行的尺寸小于弹性盒子元素的尺寸,则会向两个方向溢出相同的长度)。
  • baseline:如弹性盒子元素的行内轴与侧轴为同一条,则该值与'flex-start'等效。其它情况下,该值将参与基线对齐。
  • stretch:如果指定侧轴大小的属性值为'auto',则其值会使项目的边距盒的尺寸尽可能接近所在行的尺寸,但同时会遵照'min/max-width/height'属性的限制。

以下实例演示了 stretch(默认值) 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-align-items: stretch; align-items: stretch; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 flex-start 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-align-items: flex-start; align-items: flex-start; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 flex-end 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-align-items: flex-end; align-items: flex-end; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 center 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 baseline 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-align-items: baseline; align-items: baseline; width: 400px; height: 250px; background-color: lightgrey; }

尝试一下 »

flex-wrap 属性

flex-wrap 属性用于指定弹性盒子的子元素换行方式。

语法

flex-wrap: nowrap|wrap|wrap-reverse|initial|inherit;

各个值解析:

  • nowrap - 默认, 弹性容器为单行。该情况下弹性子项可能会溢出容器。
  • wrap - 弹性容器为多行。该情况下弹性子项溢出的部分会被放置到新行,子项内部会发生断行
  • wrap-reverse -反转 wrap 排列。

以下实例演示了 nowrap 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; width: 300px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 wrap 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; width: 300px; height: 250px; background-color: lightgrey; }

尝试一下 »

以下实例演示了 wrap-reverse 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap-reverse; flex-wrap: wrap-reverse; width: 300px; height: 250px; background-color: lightgrey; }

尝试一下 »

align-content 属性

align-content 属性用于修改 flex-wrap 属性的行为。类似于 align-items, 但它不是设置弹性子元素的对齐,而是设置各个行的对齐。

语法

align-content: flex-start | flex-end | center | space-between | space-around | stretch

各个值解析:

  • stretch - 默认。各行将会伸展以占用剩余的空间。
  • flex-start - 各行向弹性盒容器的起始位置堆叠。
  • flex-end - 各行向弹性盒容器的结束位置堆叠。
  • center -各行向弹性盒容器的中间位置堆叠。
  • space-between -各行在弹性盒容器中平均分布。
  • space-around - 各行在弹性盒容器中平均分布,两端保留子元素与子元素之间间距大小的一半。

以下实例演示了 center 的使用:

实例

.flex-container { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-content: center; align-content: center; width: 300px; height: 300px; background-color: lightgrey; }

尝试一下 »

弹性子元素属性

排序

语法

order: 

各个值解析:

  • <integer>:用整数值来定义排列顺序,数值小的排在前面。可以为负值。

order 属性设置弹性容器内弹性子元素的属性:

实例

.flex-item { background-color: cornflowerblue; width: 100px; height: 100px; margin: 10px; } .first { -webkit-order: -1; order: -1; }

尝试一下 »

对齐

设置"margin"值为"auto"值,自动获取弹性容器中剩余的空间。所以设置垂直方向margin值为"auto",可以使弹性子元素在弹性容器的两上轴方向都完全居中。

以下实例在第一个弹性子元素上设置了 margin-right: auto; 。 它将剩余的空间放置在元素的右侧:

实例

.flex-item { background-color: cornflowerblue; width: 75px; height: 75px; margin: 10px; } .flex-item:first-child { margin-right: auto; }

尝试一下 »

完美的居中

以下实例将完美解决我们平时碰到的居中问题。

使用弹性盒子,居中变的很简单,只想要设置 margin: auto; 可以使得弹性子元素在两上轴方向上完全居中:

实例

.flex-item { background-color: cornflowerblue; width: 75px; height: 75px; margin: auto; }

尝试一下 »

align-self

align-self 属性用于设置弹性元素自身在侧轴(纵轴)方向上的对齐方式。

语法

align-self: auto | flex-start | flex-end | center | baseline | stretch

各个值解析:

  • auto:如果'align-self'的值为'auto',则其计算值为元素的父元素的'align-items'值,如果其没有父元素,则计算值为'stretch'。
  • flex-start:弹性盒子元素的侧轴(纵轴)起始位置的边界紧靠住该行的侧轴起始边界。
  • flex-end:弹性盒子元素的侧轴(纵轴)起始位置的边界紧靠住该行的侧轴结束边界。
  • center:弹性盒子元素在该行的侧轴(纵轴)上居中放置。(如果该行的尺寸小于弹性盒子元素的尺寸,则会向两个方向溢出相同的长度)。
  • baseline:如弹性盒子元素的行内轴与侧轴为同一条,则该值与'flex-start'等效。其它情况下,该值将参与基线对齐。
  • stretch:如果指定侧轴大小的属性值为'auto',则其值会使项目的边距盒的尺寸尽可能接近所在行的尺寸,但同时会遵照'min/max-width/height'属性的限制。

以下实例演示了弹性子元素上 align-self 不同值的应用效果:

实例

.flex-item { background-color: cornflowerblue; width: 60px; min-height: 100px; margin: 10px; } .item1 { -webkit-align-self: flex-start; align-self: flex-start; } .item2 { -webkit-align-self: flex-end; align-self: flex-end; } .item3 { -webkit-align-self: center; align-self: center; } .item4 { -webkit-align-self: baseline; align-self: baseline; } .item5 { -webkit-align-self: stretch; align-self: stretch; }

尝试一下 »

flex

flex 属性用于指定弹性子元素如何分配空间。

语法

flex: auto | initial | none | inherit |  [ flex-grow ] || [ flex-shrink ] || [ flex-basis ]

各个值解析:

  • auto: 计算值为 1 1 auto
  • initial: 计算值为 0 1 auto
  • none:计算值为 0 0 auto
  • inherit:从父元素继承
  • [ flex-grow ]:定义弹性盒子元素的扩展比率。
  • [ flex-shrink ]:定义弹性盒子元素的收缩比率。
  • [ flex-basis ]:定义弹性盒子元素的默认基准值。

以下实例中,第一个弹性子元素占用了 2/4 的空间,其他两个各占 1/4 的空间:

实例

.flex-item { background-color: cornflowerblue; margin: 10px; } .item1 { -webkit-flex: 2; flex: 2; } .item2 { -webkit-flex: 1; flex: 1; } .item3 { -webkit-flex: 1; flex: 1; }

尝试一下 »

实例

更多实例

使用弹性盒子创建响应式页面


CSS3 弹性盒子属性

下表列出了在弹性盒子中常用到的属性:

属性 描述
display 指定 HTML 元素盒子类型。
flex-direction 指定了弹性容器中子元素的排列方式
justify-content 设置弹性盒子元素在主轴(横轴)方向上的对齐方式。
align-items 设置弹性盒子元素在侧轴(纵轴)方向上的对齐方式。
flex-wrap 设置弹性盒子的子元素超出父容器时是否换行。
align-content 修改 flex-wrap 属性的行为,类似 align-items, 但不是设置子元素对齐,而是设置行对齐
flex-flow flex-direction 和 flex-wrap 的简写
order 设置弹性盒子的子元素排列顺序。
align-self 在弹性子元素上使用。覆盖容器的 align-items 属性。
flex 设置弹性盒子的子元素如何分配空间。

1 篇笔记 写笔记

  1. #1

       蔷薇爱Nina

      wan***unwang@dhcc.com.cn

    54

    块元素垂直居中问题采用 flex 解决。

    行内元素垂直居中问题解决如下:

    1)单行

    该元素 css 属性 line-height 的值与该元素的父级元素 css 属性 height 一致即可。

    2)多行

    设置该元素 css 属性:display: table-cell; vertical-align: middle;,还需设置该元素的父级元素 css 属性:display: table;

    蔷薇爱Nina

       蔷薇爱Nina

      wan***unwang@dhcc.com.cn

    8个月前 (08-04)

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 多媒体查询


CSS2 多媒体类型

@media 规则在 CSS2 中有介绍,针对不同媒体类型可以定制不同的样式规则。

例如:你可以针对不同的媒体类型(包括显示器、便携设备、电视机,等等)设置不同的样式规则。

但是这些多媒体类型在很多设备上支持还不够友好。


CSS3 多媒体查询

CSS3 的多媒体查询继承了 CSS2 多媒体类型的所有思想: 取代了查找设备的类型,CSS3 根据设置自适应显示。

媒体查询可用于检测很多事情,例如:

  • viewport(视窗) 的宽度与高度
  • 设备的宽度与高度
  • 朝向 (智能手机横屏,竖屏) 。
  • 分辨率

目前很多针对苹果手机,Android 手机,平板等设备都会使用到多媒体查询。


浏览器支持

表格中的数字表示支持该属性的第一个浏览器的版本号。

属性
@media 21.0 9.0 3.5 4.0 9.0

多媒体查询语法

多媒体查询由多种媒体组成,可以包含一个或多个表达式,表达式根据条件是否成立返回 true 或 false。

@media not|only mediatype and (expressions) { CSS 代码...; }

如果指定的多媒体类型匹配设备类型则查询结果返回 true,文档会在匹配的设备上显示指定样式效果。

除非你使用了 not 或 only 操作符,否则所有的样式会适应在所有设备上显示效果。

  • not: not是用来排除掉某些特定的设备的,比如 @media not print(非打印设备)。

  • only: 用来定某种特别的媒体类型。对于支持Media Queries的移动设备来说,如果存在only关键字,移动设备的Web浏览器会忽略only关键字并直接根据后面的表达式应用样式文件。对于不支持Media Queries的设备但能够读取Media Type类型的Web浏览器,遇到only关键字时会忽略这个样式文件。

  • all: 所有设备,这个应该经常看到。

你也可以在不同的媒体上使用不同的样式文件:

<link rel="stylesheet" media="mediatype and|not|only (expressions)" href="print.css">

CSS3 多媒体类型

描述
all 用于所有多媒体类型设备
print 用于打印机
screen 用于电脑屏幕,平板,智能手机等。
speech 用于屏幕阅读器

多媒体查询简单实例

使用多媒体查询可以在指定的设备上使用对应的样式替代原有的样式。

以下实例中在屏幕可视窗口尺寸小于 480 像素的设备上修改背景颜色:

实例

@media screen and (min-width: 480px) {
    body {
        background-color: lightgreen;
    }
}

尝试一下 »

以下实例在屏幕可视窗口尺寸大于 480 像素时将菜单浮动到页面左侧:

实例

@media screen and (min-width: 480px) {
    #leftsidebar {width: 200px; float: left;}
    #main {margin-left:216px;}
}

尝试一下 »

CSS3 @media 参考

更多多媒体查询内容可以参考 @media 规则。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

CSS3 多媒体查询实例

本章节我们将为大家演示一些多媒体查询实例。

开始之前我们先制作一个电子邮箱的链接列表。HTML 代码如下:

实例 1

<!DOCTYPE html>
<html>
<head>
<style>
ul {
    list-style-type: none;
}

ul li a {
    color: green;
    text-decoration: none;
    padding: 3px;
    display: block;
}
</style>
</head>
<body>

<ul>
  <li><a data-email="johndoe@example.com" href="mailto:johndoe@example.com">John Doe</a></li>
  <li><a data-email="marymoe@example.com" href="mailto:marymoe@example.com">Mary Moe</a></li>
  <li><a data-email="amandapanda@example.com" href="mailto:amandapanda@example.com">Amanda Panda</a></li>
</ul>

</body>
</html>

尝试一下 »

注意 data-email 属性。在 HTML 中我们可以使用带 data- 前缀的属性来存储信息。


520 到 699px 宽度 - 添加邮箱图标

当浏览器的宽度在 520 到 699px, 邮箱链接前添加邮件图标:

实例 2

@media screen and (max-width: 699px) and (min-width: 520px) {
    ul li a {
        padding-left: 30px;
        background: url(email-icon.png) left center no-repeat;
    }
}

尝试一下 »

700 到 1000px - 添加文本前缀信息

当浏览器的宽度在 700 到 1000px, 会在邮箱链接前添加 "Email: ":

实例 3

@media screen and (max-width: 1000px) and (min-width: 700px) {
    ul li a:before {
        content: "Email: ";
        font-style: italic;
        color: #666666;
    }
}

尝试一下 »

大于 1001px 宽度 - 添加邮件地址

当浏览器的宽度大于 1001px 时,会在链接后添加邮件地址接。

我们会使用 data- 属性来为每个人名后添加邮件地址:

实例 4

@media screen and (min-width: 1001px) {
    ul li a:after {
        content: " (" attr(data-email) ")";
        font-size: 12px;
        font-style: italic;
        color: #666666;
    }
}

尝试一下 »

大于 1151px 宽度 - 添加图标

当浏览器的宽度大于 1001px 时,会在人名前添加图标。

实例中,我们没有编写额外的查询块,我们可以在已有的查询媒体后使用逗号分隔来添加其他媒体查询 (类似 OR 操作符):

实例 5

@media screen and (max-width: 699px) and (min-width: 520px), (min-width: 1151px) {
    ul li a {
        padding-left: 30px;
        background: url(email-icon.png) left center no-repeat;
    }
}

尝试一下 »

实例

更多实例

在一个网页的侧栏上使用邮件列表链接
该实例在网页的左侧栏添加了邮件链接列表。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

响应式 Web 设计 - Viewport


什么是 Viewport?

viewport 是用户网页的可视区域。

viewport 翻译为中文可以叫做"视区"。

手机浏览器是把页面放在一个虚拟的"窗口"(viewport)中,通常这个虚拟的"窗口"(viewport)比屏幕宽,这样就不用把每个网页挤到很小的窗口中(这样会破坏没有针对手机浏览器优化的网页的布局),用户可以通过平移和缩放来看网页的不同部分。


设置 Viewport

一个常用的针对移动网页优化过的页面的 viewport meta 标签大致如下:

<meta name="viewport" content="width=device-width, initial-scale=1.0">
  • width:控制 viewport 的大小,可以指定的一个值,如 600,或者特殊的值,如 device-width 为设备的宽度(单位为缩放为 100% 时的 CSS 的像素)。
  • height:和 width 相对应,指定高度。
  • initial-scale:初始缩放比例,也即是当页面第一次 load 的时候缩放比例。
  • maximum-scale:允许用户缩放到的最大比例。
  • minimum-scale:允许用户缩放到的最小比例。
  • user-scalable:用户是否可以手动缩放。

以下实例演示了使用viewport和没使用viewport在移动端上的效果:

实例1、没有添加 viewport:点击查看

实例2、添加 viewport:点击查看

如果你在平板电脑或手机上访问,可以直接点击查看效果。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

响应式 Web 设计 - 网格视图


什么是网格视图?

很多网页都是基于网格设计的,这说明网页是按列来布局的。

使用网格视图有助于我们设计网页。这让我们向网页添加元素变的更简单。

响应式网格视图通常是 12 列,宽度为100%,在浏览器窗口大小调整时会自动伸缩。

响应式网格视图


创建响应式网格视图

接下来我们来创建一个响应式网格视图。

首先确保所有的 HTML 元素都有 box-sizing 属性且设置为 border-box

确保边距和边框包含在元素的宽度和高度间。

添加如下代码:

* {
    box-sizing: border-box;
}

查看更多 box-sizing 内容请点击:CSS3 box-sizing 属性

以下实例演示了简单的响应式网页,包含两列:

实例

.menu {
    width: 25%;
    float: left;
}
.main {
    width: 75%;
    float: left;
}

尝试一下 »

以上实例包含两列。

12 列的网格系统可以更好的控制响应式网页。

首先我们可以计算每列的百分比: 100% / 12 列 = 8.33%。

在每列中指定 class, class="col-" 用于定义每列有几个 span :

CSS:

.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}

尝试一下 »

所有的列向左浮动,间距(padding) 为 15px:

CSS:

[class*="col-"] {
    float: left;
    padding: 15px;
    border: 1px solid red;
}

每一行使用 <div> 包裹。所有列数加起来应为 12:

<div class="row">
  <div class="col-3">...</div>
  <div class="col-9">...</div>
</div>

列中行为左浮动,并添加清除浮动:

CSS:

.row:after {
    content: "";
    clear: both;
    display: block;
}

我们可以添加一些样式和颜色,让其更好看:

实例

html {
    font-family: "Lucida Sans", sans-serif;
}
.header {
    background-color: #9933cc;
    color: #ffffff;
    padding: 15px;
}
.menu ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.menu li {
    padding: 8px;
    margin-bottom: 7px;
    background-color :#33b5e5;
    color: #ffffff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
}
.menu li:hover {
    background-color: #0099cc;
}

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

响应式 Web 设计 - 媒体查询


媒体(media)查询在 CSS3 上有介绍:CSS3 @media 查询

使用 @media 查询,你可以针对不同的媒体类型定义不同的样式。

实例

如果浏览器窗口小于 500px, 背景将变为浅蓝色:

@media only screen and (max-width: 500px) {
    body {
        background-color: lightblue;
    }
}

尝试一下 »

添加断点

在先前的教程中我们使用行和列来制作网页,它是响应式的,但在小屏幕上并不能友好的展示。

媒体查询可以帮我们解决这个问题。我们可以在设计稿的中间添加断点,不同的断点有不同的效果。

桌面设备

手机设备

使用媒体查询在 768px 添加断点:

实例

当屏幕 (浏览器窗口) 小于 768px, 每一列的宽度是 100%:

/* For desktop: */
.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}

@media only screen and (max-width: 768px) {
    /* For mobile phones: */
    [class*="col-"] {
        width: 100%;
    }
}

尝试一下 »

为移动端优先设计

移动端优先意味着在设计桌面和其他设备时优先考虑移动端的设计。

这就意味着我们必须对 CSS 做一些改变。

我们在屏幕小于 768px 进行样式修改,同样在屏幕宽度大于 768px 时也需要修改样式。以下是移动端优先实例:

/* 为移动端设计: */
[class*="col-"] {
    width: 100%;
}
@media only screen and (min-width: 768px) {
    /* For desktop: */
    .col-1 {width: 8.33%;}
    .col-2 {width: 16.66%;}
    .col-3 {width: 25%;}
    .col-4 {width: 33.33%;}
    .col-5 {width: 41.66%;}
    .col-6 {width: 50%;}
    .col-7 {width: 58.33%;}
    .col-8 {width: 66.66%;}
    .col-9 {width: 75%;}
    .col-10 {width: 83.33%;}
    .col-11 {width: 91.66%;}
    .col-12 {width: 100%;}
}

其他断点

你可以根据自己的需要添加断点。

我们同样可以为平板设备和移动手机设备设置断点。

桌面设备

平板设备

手机设备

在屏幕为 600px 时添加媒体查询,并设置新的样式(屏幕大于600px但小于768px):

实例

注意两组类样式是相同的,但名称不同 (col- 和 col-m-):

/* For mobile phones: */
[class*="col-"] {
    width: 100%;
}
@media only screen and (min-width: 600px) {
    /* For tablets: */
    .col-m-1 {width: 8.33%;}
    .col-m-2 {width: 16.66%;}
    .col-m-3 {width: 25%;}
    .col-m-4 {width: 33.33%;}
    .col-m-5 {width: 41.66%;}
    .col-m-6 {width: 50%;}
    .col-m-7 {width: 58.33%;}
    .col-m-8 {width: 66.66%;}
    .col-m-9 {width: 75%;}
    .col-m-10 {width: 83.33%;}
    .col-m-11 {width: 91.66%;}
    .col-m-12 {width: 100%;}
}
@media only screen and (min-width: 768px) {
    /* For desktop: */
    .col-1 {width: 8.33%;}
    .col-2 {width: 16.66%;}
    .col-3 {width: 25%;}
    .col-4 {width: 33.33%;}
    .col-5 {width: 41.66%;}
    .col-6 {width: 50%;}
    .col-7 {width: 58.33%;}
    .col-8 {width: 66.66%;}
    .col-9 {width: 75%;}
    .col-10 {width: 83.33%;}
    .col-11 {width: 91.66%;}
    .col-12 {width: 100%;}
}

尝试一下 »

以上代码看起来很多余,但是他可以根据屏幕大小自动设置不同的样式,所以还是非常必要的。

HTML 实例

针对桌面设备:

第一和第三部分跨越 3 列。中间部分跨域 6 列。

针对平板设备:

第一跨域 3列,第二部分跨越 9 列,第三部分跨域 12 列:

<div class="row">
<div class="col-3 col-m-3">...</div>
<div class="col-6 col-m-9">...</div>
<div class="col-3 col-m-12">...</div>
</div>

方向:横屏/竖屏

结合CSS媒体查询,可以创建适应不同设备的方向(横屏landscape、竖屏portrait等)的布局。

语法:

orientation:portrait | landscape
  • portrait:指定输出设备中的页面可见区域高度大于或等于宽度
  • landscape: 除portrait值情况外,都是landscape

实例

如果是横屏背景将是浅蓝色:

@media only screen and (orientation: landscape) {
    body {
        background-color: lightblue;
    }
}

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

响应式 Web 设计 - 图片


使用 width 属性

如果 width 属性设置为 100%,图片会根据上下范围实现响应式功能:

实例

img {
    width: 100%;
    height: auto;
}

尝试一下 »

注意在以上实例中,图片会比它的原始图片大。我们可以使用 max-width 属性很好的解决这个问题。


使用 max-width 属性

如果 max-width 属性设置为 100%, 图片永远不会大于其原始大小:

实例

img {
    max-width: 100%;
    height: auto;
}

尝试一下 »

网页中添加图片

实例

img {
    width: 100%;
    height: auto;
}

尝试一下 »

背景图片

背景图片可以响应调整大小或缩放。

以下是三个不同的方法:

1. 如果 background-size 属性设置为 "contain", 背景图片将按比例自适应内容区域。图片保持其比例不变:

这是 CSS 代码:

实例

div {
    width: 100%;
    height: 400px;
    background-image: url('img_flowers.jpg');
    background-repeat: no-repeat;
    background-size: contain;
    border: 1px solid red;
}

尝试一下 »

2. 如果 background-size 属性设置为 "100% 100%" ,背景图片将延展覆盖整个区域:

实例

这是 CSS 代码:

div {
    width: 100%;
    height: 400px;
    background-image: url('img_flowers.jpg');
    background-size: 100% 100%;
    border: 1px solid red;
}

尝试一下 »

3. 如果 background-size 属性设置为 "cover",则会把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。注意该属性保持了图片的比例因此 背景图像的某些部分无法显示在背景定位区域中。

这是 CSS 代码:

实例

div {
    width: 100%;
    height: 400px;
    background-image: url('img_flowers.jpg');
    background-size: cover;
    border: 1px solid red;
}

尝试一下 »

不同设备显示不同图片

大尺寸图片可以显示在大屏幕上,但在小屏幕上确不能很好显示。我们没有必要在小屏幕上去加载大图片,这样很影响加载速度。所以我们可以使用媒体查询,根据不同的设备显示不同的图片。

以下大图片和小图片将显示在不同设备上:

实例

/* For width smaller than 400px: */
body {
    background-image: url('img_smallflower.jpg');
}

/* For width 400px and larger: */
@media only screen and (min-width: 400px) {
    body {
        background-image: url('img_flowers.jpg');
    }
}

尝试一下 »

你可以使用媒体查询的 min-device-width 替代 min-width 属性,它将检测的是设备宽度而不是浏览器宽度。浏览器大小重置时,图片大小不会改变。

实例

/* 设备小于 400px: */
body {
    background-image: url('img_smallflower.jpg');
}

/* 设备大于 400px (也等于): */
@media only screen and (min-device-width: 400px) {
    body {
        background-image: url('img_flowers.jpg');
    }
}

尝试一下 »

HTML5 <picture> 元素

HTML5 的 <picture> 元素可以设置多张图片。

浏览器支持

元素
<picture> 不支持 38.0 38.0 不支持 25.0

<picture> 元素类似于 <video><audio> 元素。可以设备不同的资源,第一个设置的资源为首选使用的:

实例

<picture>
  <source srcset="img_smallflower.jpg" media="(max-width: 400px)">
  <source srcset="img_flowers.jpg">
  <img src="img_flowers.jpg" alt="Flowers">
</picture>

尝试一下 »

srcset 属性的必须的,定义了图片资源。

media 属性是可选的,可以在媒体查询的 CSS @media 规则 查看详情。

对于不支持 <picture> 元素的浏览器你也可以定义 <img> 元素来替代。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

响应式 Web 设计 - 视频(Video)


使用 width 属性

如果 width 属性设置为 100%,视频播放器会根据屏幕大小自动调整比例:

实例

video {
    width: 100%;
    height: auto;
}

尝试一下 »

注意在以上实例中,视频播放器根据屏幕大小自动调整比例,且可以比原始尺寸大。更多情况下我们可以使用 max-width 属性来替代。


使用 max-width 属性

如果 max-width 属性设置为 100%, 视频播放器会根据屏幕自动调整比例,但不会超过其原始大小:

实例

video {
    max-width: 100%;
    height: auto;
}

尝试一下 »

在网页中添加视频

我们可以在网页中添加视频。以下实例视频根据 div 区域大小自动调整并占满整个 div 区域:

实例

video {
    width: 100%;
    height: auto;
}

尝试一下 »

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭

响应式 Web 设计 - 框架

本章节为大家介绍响应式 Web 设计框架 Bootstrap。

Bootstrap,来自 Twitter,是目前最受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷。

实例

<!DOCTYPE html>
<html lang="en">
<head>
<title>Bootstrap Example</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://apps.bdimg.com/libs/bootstrap/3.3.4/css/bootstrap.min.css">
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="http://apps.bdimg.com/libs/bootstrap/3.3.4/js/bootstrap.min.js"></script>
</head>
<body>

<div class="container">
  <div class="jumbotron">
    <h1>我的第一个 Bootstrap 页面</h1>
  </div>
  <div class="row">
    <div class="col-sm-4">
      ...
    </div>
    <div class="col-sm-4">
      ...
    </div>
    <div class="col-sm-4">
    ...
    </div>
  </div>
</div>

</body>
</html>

尝试一下 »

更多内容,请查看我们的 Bootstrap 教材

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭
CSS 参考手册

CSS 参考手册


Note 菜鸟教程的 CSS 参考手册在所有主流浏览器中测试通过.


CSS 属性

CSS 属性组:

"CSS" 列指示属性是在哪个 CSS 版本中定义的 (CSS1, CSS2, 或者 CSS3).

动画属性

属性 描述 CSS
@keyframes 定义一个动画,@keyframes定义的动画名称用来被animation-name所使用。 3
animation 复合属性。检索或设置对象所应用的动画特效。 3
animation-name 检索或设置对象所应用的动画名称 ,必须与规则@keyframes配合使用,因为动画名称由@keyframes定义 3
animation-duration 检索或设置对象动画的持续时间 3
animation-timing-function 检索或设置对象动画的过渡类型 3
animation-delay 检索或设置对象动画的延迟时间 3
animation-iteration-count 检索或设置对象动画的循环次数 3
animation-direction 检索或设置对象动画在循环中是否反向运动 3
animation-play-state 检索或设置对象动画的状态 3

背景属性

属性 描述 CSS
background 复合属性。设置对象的背景特性。 1
background-attachment 设置或检索背景图像是随对象内容滚动还是固定的。必须先指定background-image属性。 1
background-color 设置或检索对象的背景颜色。 1
background-image 设置或检索对象的背景图像。 1
background-position 设置或检索对象的背景图像位置。必须先指定background-image属性。 1
background-repeat 设置或检索对象的背景图像如何铺排填充。必须先指定background-image属性。 1
background-clip 指定对象的背景图像向外裁剪的区域。 3
background-origin S设置或检索对象的背景图像计算background-position时的参考原点(位置)。 3
background-size 检索或设置对象的背景图像的尺寸大小。 3

边框(Border) 和 轮廓(Outline) 属性

属性 描述 CSS
border 复合属性。设置对象边框的特性。 1
border-bottom 复合属性。设置对象底部边框的特性。 1
border-bottom-color 设置或检索对象的底部边框颜色。
border-bottom-style 设置或检索对象的底部边框样式。 1
border-bottom-width 设置或检索对象的底部边框宽度。 1
border-color 置或检索对象的边框颜色。 1
border-left 复合属性。设置对象左边边框的特性。 1
border-left-color 设置或检索对象的左边边框颜色。 1
border-left-style 设置或检索对象的左边边框样式。 1
border-left-width 设置或检索对象的左边边框宽度。 1
border-right 复合属性。设置对象右边边框的特性。 1
border-right-color 设置或检索对象的右边边框颜色。 1
border-right-style 设置或检索对象的右边边框样式。 1
border-right-width 设置或检索对象的右边边框宽度。 1
border-style 设置或检索对象的边框样式。 1
border-top 复合属性。设置对象顶部边框的特性。 1
border-top-color 设置或检索对象的顶部边框颜色 1
border-top-style 设置或检索对象的顶部边框样式。 1
border-top-width 设置或检索对象的顶部边框宽度。 1
border-width 设置或检索对象的边框宽度。 1
outline 复合属性。设置或检索对象外的线条轮廓。 2
outline-color 设置或检索对象外的线条轮廓的颜色。 2
outline-style 设置或检索对象外的线条轮廓的样式。 2
outline-width 设置或检索对象外的线条轮廓的宽度。 2
border-bottom-left-radius 设置或检索对象的左下角圆角边框。提供2个参数,2个参数以空格分隔,每个参数允许设置1个参数值,第1个参数表示水平半径,第2个参数表示垂直半径,如第2个参数省略,则默认等于第1个参数 3
border-bottom-right-radius 设置或检索对象的右下角圆角边框。 3
border-image 设置或检索对象的边框样式使用图像来填充。 3
border-image-outset 规定边框图像超过边框的量。 3
border-image-repeat 规定图像边框是否应该被重复(repeated)、拉伸(stretched)或铺满(rounded)。 3
border-image-slice 规定图像边框的向内偏移。 3
border-image-source 规定要使用的图像,代替 border-style 属性中设置的边框样式。 3
border-image-width 规定图像边框的宽度。 3
border-radius 设置或检索对象使用圆角边框。 3
border-top-left-radius 定义左上角边框的形状。 3
border-top-right-radius 定义右上角边框的形状。 3
box-decoration-break 规定行内元素被折行 3
box-shadow 向方框添加一个或多个阴影。 3

盒子(Box) 属性

属性 描述 CSS
overflow-x 如果内容溢出了元素内容区域,是否对内容的左/右边缘进行裁剪。 3
overflow-y 如果内容溢出了元素内容区域,是否对内容的上/下边缘进行裁剪。 3
overflow-style 规定溢出元素的首选滚动方法。 3
rotation 围绕由 rotation-point 属性定义的点对元素进行旋转。 3
rotation-point 定义距离上左边框边缘的偏移点。 3

颜色(Color) 属性

属性 描述 CSS
color-profile 允许使用源的颜色配置文件的默认以外的规范 3
opacity 设置一个元素的透明度级别 3
rendering-intent 允许超过默认颜色配置文件渲染意向的其他规范 3

内边距(Padding) 属性

属性 说明 CSS
padding 在一个声明中设置所有填充属性 1
padding-bottom 设置元素的底填充 1
padding-left 设置元素的左填充 1
padding-right 设置元素的右填充 1
padding-top 设置元素的顶部填充 1

媒体页面内容属性

属性 说明 CSS
bookmark-label 指定书签的标签 3
bookmark-level 指定了书签级别 3
bookmark-target 指定了书签链接的目标 3
float-offset 在相反的方向推动浮动元素,他们一直具有浮动 3
hyphenate-after 指定一个断字的单词断字字符后的最少字符数 3
hyphenate-before 指定一个断字的单词断字字符前的最少字符数 3
hyphenate-character 指定了当一个断字发生时,要显示的字符串 3
hyphenate-lines 表示连续断字的行在元素的最大数目 3
hyphenate-resource 外部资源指定一个逗号分隔的列表,可以帮助确定浏览器的断字点 3
hyphens 设置如何分割单词以改善该段的布局 3
image-resolution 指定了正确的图像分辨率 3
marks 将crop and/or cross标志添加到文档 3
string-set   3

尺寸(Dimension) 属性

属性 描述 CSS
height 设置元素的高度 1
max-height 设置元素的最大高度 2
max-width 设置元素的最大宽度 2
min-height 设置元素的最小高度 2
min-width 设置元素的最小宽度 2
width 设置元素的宽度 1

弹性盒子模型(Flexible Box) 属性(新)

属性 说明 CSS
flex 复合属性。设置或检索弹性盒模型对象的子元素如何分配空间。 3
flex-grow 设置或检索弹性盒的扩展比率。 3
flex-shrink 设置或检索弹性盒的收缩比率。 3
flex-basis 设置或检索弹性盒伸缩基准值。 3
flex-flow 复合属性。设置或检索弹性盒模型对象的子元素排列方式。 3
flex-direction 该属性通过定义flex容器的主轴方向来决定felx子项在flex容器中的位置。 3
flex-wrap 该属性控制flex容器是单行或者多行,同时横轴的方向决定了新行堆叠的方向。 3
align-content 在弹性容器内的各项没有占用交叉轴上所有可用的空间时对齐容器内的各项(垂直)。 3
align-items 定义flex子项在flex容器的当前行的侧轴(纵轴)方向上的对齐方式。 3
align-self 定义flex子项单独在侧轴(纵轴)方向上的对齐方式。 3
justify-content 设置或检索弹性盒子元素在主轴(横轴)方向上的对齐方式。 3
order 设置或检索弹性盒模型对象的子元素出现的順序。 3

弹性盒子模型(Flexible Box) 属性(旧)

属性 说明 CSS
box-align 指定如何对齐一个框的子元素 3
box-direction 指定在哪个方向,显示一个框的子元素 3
box-flex 指定一个框的子元素是否是灵活的或固定的大小 3
box-flex-group 指派灵活的元素到Flex组 3
box-lines 每当它在父框的空间运行时,是否指定将再上一个新的行列 3
box-ordinal-group 指定一个框的子元素的显示顺序 3
box-orient 指定一个框的子元素是否在水平或垂直方向应铺设 3
box-pack 指定横向盒在垂直框的水平位置和垂直位置 3

字体(Font) 属性

属性 说明 CSS
font 在一个声明中设置所有字体属性 1
font-family 规定文本的字体系列 1
font-size 规定文本的字体尺寸 1
font-style 规定文本的字体样式 1
font-variant 规定文本的字体样式 1
font-weight 规定字体的粗细 1
@font-face 一个规则,允许网站下载并使用其他超过"Web- safe"字体的字体 3
font-size-adjust 为元素规定 aspect 值 3
font-stretch 收缩或拉伸当前的字体系列 3

内容生成属性(Generated Content Properties)

属性 说明 CSS
content 与 :before 以及 :after 伪元素配合使用,来插入生成内容 2
counter-increment 递增或递减一个或多个计数器 2
counter-reset 创建或重置一个或多个计数器 2
quotes 设置嵌套引用的引号类型 2
crop 允许replaced元素只是作为一个对象代替整个对象的矩形区域 3
move-to 从流中删除元素,然后在文档中后面的点上重新插入。 3
page-policy 判定基于页面的给定元素的适用于计数器的字符串值 3

网格(Grid) 属性

属性 说明 CSS
grid-columns 指定在网格中每列的宽度 3
grid-rows 指定在网格中每列的高度 3

超链接(Hyperlink) 属性

属性 说明 CSS
target 简写属性设置target-name, target-new,和target-position属性 3
target-name 指定在何处打开链接(目标位置) 3
target-new 指定是否有新的目标链接打开一个新窗口或在现有窗口打开新标签 3
target-position 指定应该放置新的目标链接的位置 3

线框(Linebox) 属性

属性 说明 CSS
alignment-adjust 允许更精确的元素的对齐方式 3
alignment-baseline 其父级指定的内联级别的元素如何对齐 3
baseline-shift 允许重新定位相对于dominant-baseline的dominant-baseline 3
dominant-baseline 指定scaled-baseline-table 3
drop-initial-after-adjust 设置下拉的主要连接点的初始对齐点 3
drop-initial-after-align 校准行内的初始行的设置就是具有首字母的框使用初级连接点 3
drop-initial-before-adjust 设置下拉的辅助连接点的初始对齐点 3
drop-initial-before-align 校准行内的初始行的设置就是具有首字母的框使用辅助连接点 3
drop-initial-size 控制局部的首字母下沉 3
drop-initial-value 激活一个下拉式的初步效果
inline-box-align 设置一个多行的内联块内的行具有前一个和后一个内联元素的对齐 3
line-stacking 一个速记属性设置line-stacking-strategy, line-stacking-ruby,和line-stacking-shift属性 3
line-stacking-ruby 设置包含Ruby注释元素的行对于块元素的堆叠方法 3
line-stacking-shift 设置base-shift行中块元素包含元素的堆叠方法 3
line-stacking-strategy 设置内部包含块元素的堆叠线框的堆叠方法 3
text-height 行内框的文本内容区域设置block-progression维数 3

列表(List) 属性

属性 说明 CSS
list-style 在一个声明中设置所有的列表属性 1
list-style-image 将图象设置为列表项标记 1
list-style-position 设置列表项标记的放置位置 1
list-style-type 设置列表项标记的类型 1

外边距(Margin) 属性

属性 说明 CSS
margin 在一个声明中设置所有外边距属性 1
margin-bottom 设置元素的下外边距 1
margin-left 设置元素的左外边距 1
margin-right 设置元素的右外边距 1
margin-top 设置元素的上外边距 1

字幕(Marquee) 属性

属性 说明 CSS
marquee-direction 设置内容移动的方向 3
marquee-play-count 设置内容移动多少次 3
marquee-speed 设置内容滚动的速度有多快 3
marquee-style 设置内容移动的样式 3

多列(Multi-column) 属性

属性 说明 CSS
column-count 指定元素应该分为的列数 3
column-fill 指定如何填充列 3
column-gap 指定列之间的差距 3
column-rule 对于设置所有column-rule-*属性的简写属性 3
column-rule-color 指定列之间的颜色规则 3
column-rule-style 指定列之间的样式规则 3
column-rule-width 指定列之间的宽度规则 3
column-span 指定元素应该跨越多少列 3
column-width 指定列的宽度 3
columns 缩写属性设置列宽和列数 3

页面媒体(Paged Media) 属性

属性 说明 CSS
fit 如果其宽度和高度属性都不是auto给出一个提示,如何大规模替换元素 3
fit-position 判定方框内对象的对齐方式 3
image-orientation 指定用户代理适用于图像中的向右或顺时针方向的旋转 3
page 指定一个元素应显示的页面的特定类型 3
size 指定含有BOX的页面内容的大小和方位 3

定位(Positioning) 属性

属性 说明 CSS
bottom 设置定位元素下外边距边界与其包含块下边界之间的偏移 2
clear 规定元素的哪一侧不允许其他浮动元素 1
clip 剪裁绝对定位元素 2
cursor 规定要显示的光标的类型(形状) 2
display 规定元素应该生成的框的类型 1
float 规定框是否应该浮动 1
left 设置定位元素左外边距边界与其包含块左边界之间的偏移 2
overflow
规定当内容溢出元素框时发生的事情 2
position 规定元素的定位类型 2
right 设置定位元素右外边距边界与其包含块右边界之间的偏移 2
top 设置定位元素的上外边距边界与其包含块上边界之间的偏移 2
visibility 规定元素是否可见 2
z-index 设置元素的堆叠顺序 2

分页(Print) 属性

属性 说明 CSS
orphans 设置当元素内部发生分页时必须在页面底部保留的最少行数 2
page-break-after 设置元素后的分页行为 2
page-break-before 设置元素前的分页行为 2
page-break-inside 设置元素内部的分页行为 2
widows 设置当元素内部发生分页时必须在页面顶部保留的最少行数 2

Ruby 属性

属性 说明 CSS
ruby-align 控制Ruby文本和Ruby基础内容相对彼此的文本对齐方式 3
ruby-overhang 当Ruby文本超过Ruby的基础宽,确定ruby文本是否允许局部悬置任意相邻的文本,除了自己的基础 3
ruby-position 它的base控制Ruby文本的位置 3
ruby-span 控制annotation 元素的跨越行为 3

语音(Speech) 属性

属性 说明 CSS
mark 缩写属性设置mark-before和mark-after属性 3
mark-after 允许命名的标记连接到音频流 3
mark-before 允许命名的标记连接到音频流 3
phonemes 指定包含文本的相应元素中的一个音标发音 3
rest 一个缩写属性设置rest-before和rest-after属性 3
rest-after 一个元素的内容讲完之后,指定要休息一下或遵守韵律边界 3
rest-before 一个元素的内容讲完之前,指定要休息一下或遵守韵律边界 3
voice-balance 指定了左,右声道之间的平衡 3
voice-duration 指定应采取呈现所选元素的内容的长度 3
voice-pitch 指定平均说话的声音的音调(频率) 3
voice-pitch-range 指定平均间距的变化 3
voice-rate 控制语速 3
voice-stress 指示着重力度 3
voice-volume 语音合成是指波形输出幅度 3

表格(Table) 属性

属性 说明 CSS
border-collapse 规定是否合并表格边框 2
border-spacing 规定相邻单元格边框之间的距离 2
caption-side 规定表格标题的位置 2
empty-cells 规定是否显示表格中的空单元格上的边框和背景 2
table-layout 设置用于表格的布局算法 2

文本(Text) 属性

属性 说明 CSS
color 设置文本的颜色 1
direction 规定文本的方向 / 书写方向 2
letter-spacing 设置字符间距 1
line-height 设置行高 1
text-align 规定文本的水平对齐方式 1
text-decoration 规定添加到文本的装饰效果 1
text-indent 规定文本块首行的缩进 1
text-transform 控制文本的大小写 1
unicode-bidi   2
vertical-align 设置元素的垂直对齐方式 1
white-space 设置怎样给一元素控件留白 1
word-spacing 设置单词间距 1
text-emphasis 向元素的文本应用重点标记以及重点标记的前景色。 1
hanging-punctuation 指定一个标点符号是否可能超出行框 3
punctuation-trim 指定一个标点符号是否要去掉 3
text-align-last 当 text-align 设置为 justify 时,最后一行的对齐方式。 3
text-justify 当 text-align 设置为 justify 时指定分散对齐的方式。 3
text-outline 设置文字的轮廓。 3
text-overflow 指定当文本溢出包含的元素,应该发生什么 3
text-shadow 为文本添加阴影 3
text-wrap 指定文本换行规则 3
word-break 指定非CJK文字的断行规则 3
word-wrap 设置浏览器是否对过长的单词进行换行。 3

2D/3D 转换属性

属性 说明 CSS
transform 适用于2D或3D转换的元素 3
transform-origin 允许您更改转化元素位置 3
transform-style 3D空间中的指定如何嵌套元素 3
perspective 指定3D元素是如何查看透视图 3
perspective-origin 指定3D元素底部位置 3
backface-visibility 定义一个元素是否应该是可见的,不对着屏幕时 3

过渡(Transition) 属性

属性 说明 CSS
transition 此属性是 transition-property、transition-duration、transition-timing-function、transition-delay 的简写形式。 3
transition-property 设置用来进行过渡的 CSS 属性。 3
transition-duration 设置过渡进行的时间长度。 3
transition-timing-function 设置过渡进行的时序函数。 3
transition-delay 指定过渡开始的时间。 3

用户外观(User-interface) 属性

属性 说明 CSS
appearance 定义元素的外观样式 3
box-sizing 允许您为了适应区域以某种方式定义某些元素 3
icon 为元素指定图标 3
nav-down 指定用户按向下键时向下导航的位置 3
nav-index 指定导航(tab)顺序。 3
nav-left 指定用户按向左键时向左导航的位置 3
nav-right 指定用户按向右键时向左导航的位置 3
nav-up 指定用户按向上键时向上导航的位置a 3
outline-offset 设置轮廓框架在 border 边缘外的偏移 3
resize 定义元素是否可以改变大小 3

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭
CSS 参考手册

CSS 选择器


CSS选择器用于选择你想要的元素的样式的模式。

"CSS"列表示在CSS版本的属性定义(CSS1,CSS2,或对CSS3)。

选择器 示例 示例说明 CSS
.class .intro 选择所有class="intro"的元素 1
#id #firstname 选择所有id="firstname"的元素 1
* * 选择所有元素 2
element p 选择所有<p>元素 1
element,element div,p 选择所有<div>元素和<p>元素 1
element element div p 选择<div>元素内的所有<p>元素 1
element>element div>p 选择所有父级是 <div> 元素的 <p> 元素 2
element+element div+p 选择所有紧接着<div>元素之后的<p>元素 2
[attribute] [target] 选择所有带有target属性元素 2
[attribute=value] [target=-blank] 选择所有使用target="-blank"的元素 2
[attribute~=value] [title~=flower] 选择标题属性包含单词"flower"的所有元素 2
[attribute|=language] [lang|=en] 选择 lang 属性以 en 为开头的所有元素 2
:link a:link 选择所有未访问链接 1
:visited a:visited 选择所有访问过的链接 1
:active a:active 选择活动链接 1
:hover a:hover 选择鼠标在链接上面时 1
:focus input:focus 选择具有焦点的输入元素 2
:first-letter p:first-letter 选择每一个<p>元素的第一个字母 1
:first-line p:first-line 选择每一个<p>元素的第一行 1
:first-child p:first-child 指定只有当<p>元素是其父级的第一个子级的样式。 2
:before p:before 在每个<p>元素之前插入内容 2
:after p:after 在每个<p>元素之后插入内容 2
:lang(language) p:lang(it) 选择一个lang属性的起始值="it"的所有<p>元素 2
element1~element2 p~ul 选择p元素之后的每一个ul元素 3
[attribute^=value] a[src^="https"] 选择每一个src属性的值以"https"开头的元素 3
[attribute$=value] a[src$=".pdf"] 选择每一个src属性的值以".pdf"结尾的元素 3
[attribute*=value] a[src*="runoob"] 选择每一个src属性的值包含子字符串"runoob"的元素 3
:first-of-type p:first-of-type 选择每个p元素是其父级的第一个p元素 3
:last-of-type p:last-of-type 选择每个p元素是其父级的最后一个p元素 3
:only-of-type p:only-of-type 选择每个p元素是其父级的唯一p元素 3
:only-child p:only-child 选择每个p元素是其父级的唯一子元素 3
:nth-child(n) p:nth-child(2) 选择每个p元素是其父级的第二个子元素 3
:nth-last-child(n) p:nth-last-child(2) 选择每个p元素的是其父级的第二个子元素,从最后一个子项计数 3
:nth-of-type(n) p:nth-of-type(2) 选择每个p元素是其父级的第二个p元素 3
:nth-last-of-type(n) p:nth-last-of-type(2) 选择每个p元素的是其父级的第二个p元素,从最后一个子项计数 3
:last-child p:last-child 选择每个p元素是其父级的最后一个子级。 3
:root :root 选择文档的根元素 3
:empty p:empty 选择每个没有任何子级的p元素(包括文本节点) 3
:target #news:target 选择当前活动的#news元素(包含该锚名称的点击的URL) 3
:enabled input:enabled 选择每一个已启用的输入元素 3
:disabled input:disabled 选择每一个禁用的输入元素 3
:checked input:checked 选择每个选中的输入元素 3
:not(selector) :not(p) 选择每个并非p元素的元素 3
::selection ::selection 匹配元素中被用户选中或处于高亮状态的部分 3
:out-of-range :out-of-range 匹配值在指定区间之外的input元素 3
:in-range :in-range 匹配值在指定区间之内的input元素 3
:read-write :read-write 用于匹配可读及可写的元素 3
:read-only :read-only 用于匹配设置 "readonly"(只读) 属性的元素 3
:optional :optional 用于匹配可选的输入元素 3
:required :required 用于匹配设置了 "required" 属性的元素 3
:valid :valid 用于匹配输入值为合法的元素 3
:invalid :invalid 用于匹配输入值为非法的元素 3

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭
CSS 参考手册

CSS 听觉参考手册


听觉样式表使用了语音合成和声音效果的结合,让用户收听信息,而不是读取信息。

有声显示可用于:

  • 失明人士
  • 帮助用户学习阅读
  • 帮助具有阅读问题的用户
  • 家庭娱乐
  • 在车上

听觉呈现通常会把文档转化为纯文本,然后传给屏幕阅读器(可读出屏幕上所有字符的一种程序)。

听觉样式表的一个例子:

h1,h2,h3,h4
{
voice-family:male;
richness:80;
cue-before:url("beep.au")
}

上面的例子用语音合成器播放声音,开头有一个男性的声音说话。



CSS 听觉参考手册

CSS"列表示在CSS版本的属性定义(CSS1或CSS2)。

Property Description Values CSS
azimuth 设置声音应该来自哪里 angle
left-side
far-left
left
center-left
center
center-right
right
far-right
right-side
behind
leftwards
rightwards
2
cue 在一个声明中设置cue属性 cue-before
cue-after
2
cue-after 指定要播放的声音在一个元素的内容后面 none
url
2
cue-before 指定要播放的声音在一个元素的内容前面 none
url
2
elevation 设置声音应该来自哪里 angle
below
level
above
higher
lower 
2
pause 在一个声明中设置pause属性 pause-before
pause-after
2
pause-after 在一个元素的内容之后,指定暂停 time
%
2
pause-before 在一个元素的内容之前,指定暂停 time
%
2
pitch 指定讲话声音 frequency
x-low
low
medium
high
x-high 
2
pitch-range 指定讲话声音的变化。(单调的声音或动态的声音?) number 2
play-during 指定在读一个元素的内容时要播放的声音 auto
none
url
mix
repeat
2
richness 指定丰富的讲话声音。(浑厚的声音或细的声音?) number 2
speak 指定内容是否会提供听觉方式 normal
none
spell-out
2
speak-header 此属性设置或检索表格标题是在所有的单元格之前发声,还是到一个不与之关联的单元格就结束发声。 always
once
2
speak-numeral 设置或检索数字如何发音。 digits
continuous
2
speak-punctuation 设置或检索标点字符如何发音 none
code
2
speech-rate 指定发言速度 number
x-slow
slow
medium
fast
x-fast
faster
slower 
2
stress 讲话声音在指定的地方"重音" number 2
voice-family 设置或检索当前声音类型 specific-voice
generic-voice
2
volume 指定发言的音量 number
%
silent
x-soft
soft
medium
loud
x-loud 
2

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭
CSS 参考手册

CSS Web安全字体组合


常用的字体组合

font-family属性是多种字体的名称,作为一个"应变"制度,以确保浏览器/操作系统之间的最大兼容性。如果浏览器不支持的第一个字体,它尝试下一个的字体。

你想要的字体类型如果浏览器找不到,它会从通用的字体类型中找到与你相似的:

实例

p{font-family:"Times New Roman", Times, serif}

尝试一下 »

下面是一些常用的字体组合,通用的字体系列。


Serif 字体

字体 文本示例
Georgia, serif

This is a heading

This is a paragraph

"Palatino Linotype", "Book Antiqua", Palatino, serif

This is a heading

This is a paragraph

"Times New Roman", Times, serif

This is a heading

This is a paragraph

sans - serif字体

字体 文本示例
Arial, Helvetica, sans-serif

This is a heading

This is a paragraph

Arial Black, Gadget, sans-serif

This is a heading

This is a paragraph

"Comic Sans MS", cursive, sans-serif

This is a heading

This is a paragraph

Impact, Charcoal, sans-serif

This is a heading

This is a paragraph

"Lucida Sans Unicode", "Lucida Grande", sans-serif

This is a heading

This is a paragraph

Tahoma, Geneva, sans-serif

This is a heading

This is a paragraph

"Trebuchet MS", Helvetica, sans-serif

This is a heading

This is a paragraph

Verdana, Geneva, sans-serif

This is a heading

This is a paragraph

Monospace 字体

字体 文本示例
"Courier New", Courier, monospace

This is a heading

This is a paragraph

"Lucida Console", Monaco, monospace

This is a heading

This is a paragraph

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭
CSS 参考手册

CSS 动画

定义和用法

一些 CSS 属性是可以有动画效果的,这意味着它们可以用于动画和过渡。

动画属性可以逐渐地从一个值变化到另一个值,比如尺寸大小、数量、百分比和颜色。


浏览器支持

表格中的数字表示支持该方法的第一个浏览器的版本号。

紧跟在数字后面的 -webkit-, -moz-, 或 -o- 指定了第一个支持该属性的浏览器版本前缀。

4.0 -webkit- 10.0 16.0
5.0 -moz-
4.0 -webkit- 15.0 -webkit-
12.1
12.0 -o-

实例

背景颜色逐渐地从红色变化到蓝色:

@keyframes mymove { from {background-color:red;} to {background-color:blue;} } /*Safari 和 Chrome:*/ @-webkit-keyframes mymove { from {background-color:red;} to {background-color:blue;} }

尝试一下 »

动画属性

CSS 中的动画属性:

属性 实例
background尝试一下 》
background-color尝试一下 》
background-position尝试一下 》
background-size尝试一下 》
border尝试一下 》
border-bottom尝试一下 》
border-bottom-color尝试一下 》
border-bottom-left-radius尝试一下 》
border-bottom-right-radius尝试一下 》
border-bottom-width尝试一下 》
border-color尝试一下 》
border-left尝试一下 》
border-left-color尝试一下 》
border-left-width尝试一下 》
border-right尝试一下 》
border-right-color尝试一下 》
border-right-width尝试一下 》
border-spacing尝试一下 》
border-top尝试一下 》
border-top-color尝试一下 》
border-top-left-radius尝试一下 》
border-top-right-radius尝试一下 》
border-top-width尝试一下 》
bottom尝试一下 》
box-shadow尝试一下 》
clip尝试一下 》
color尝试一下 》
column-count尝试一下 》
column-gap尝试一下 》
column-rule尝试一下 》
column-rule-color尝试一下 》
column-rule-width尝试一下 》
column-width尝试一下 》
columns尝试一下 》
filter尝试一下 》
flex 
flex-basis尝试一下 》
flex-grow尝试一下 》
flex-shrink尝试一下 》
font尝试一下 》
font-size尝试一下 》
font-size-adjust 
font-stretch 
font-weight尝试一下 》
height尝试一下 》
left尝试一下 》
letter-spacing尝试一下 》
line-height尝试一下 》
margin尝试一下 》
margin-bottom尝试一下 》
margin-left尝试一下 》
margin-right尝试一下 》
margin-top尝试一下 》
max-height尝试一下 》
max-width尝试一下 》
min-height尝试一下 》
min-width尝试一下 》
opacity尝试一下 》
order尝试一下 》
outline尝试一下 》
outline-color尝试一下 》
outline-offset尝试一下 》
outline-width尝试一下 》
padding尝试一下 》
padding-bottom尝试一下 》
padding-left尝试一下 》
padding-right尝试一下 》
padding-top尝试一下 》
perspective尝试一下 》
perspective-origin尝试一下 》
right尝试一下 》
text-decoration-color尝试一下 》
text-indent尝试一下 》
text-shadow尝试一下 》
top尝试一下 》
transform尝试一下 》
transform-origin尝试一下 》
vertical-align尝试一下 》
visibility 
width尝试一下 》
word-spacing尝试一下 》
z-index尝试一下 》

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭
CSS 参考手册

CSS 有几个不同的单位用于表示长度。

一些设置 CSS 长度的属性有 width, margin, padding, font-size, border-width, 等。

长度有一个数字和单位组成如 10px, 2em, 等。

数字与单位之间不能出现空格。如果长度值为 0,则可以省略单位。

对于一些 CSS 属性,长度可以是负数。

有两种类型的长度单位:相对和绝对。


浏览器支持

下表中的数字表示支持该长度单位的最低浏览器版本。

长度单位 Chrome IE Firefox Safari Opera
em, ex, %, px, cm, mm, in, pt, pc 1.0 3.0 1.0 1.0 3.5
ch 27.0 9.0 1.0 7.0 20.0
rem 4.0 9.0 3.6 4.1 11.6
vh, vw 20.0 9.0 19.0 6.0 20.0
vmin 20.0 9.0* 19.0 6.0 20.0
vmax 26.0 不支持 19.0 不支持 20.0

注意: Internet Explorer 9 通过不标准的名称 vm 来支持 vmin 。


相对长度

相对长度单位指定了一个长度相对于另一个长度的属性。对于不同的设备相对长度更适用。

 
单位 描述 在线实例
em 它是描述相对于应用在当前元素的字体尺寸,所以它也是相对长度单位。一般浏览器字体大小默认为16px,则2em == 32px; 尝试一下
ex 依赖于英文字母小 x 的高度 尝试一下
ch 数字 0 的宽度
rem rem 是根 em(root em)的缩写,rem作用于非根元素时,相对于根元素字体大小;rem作用于根元素字体大小时,相对于其出初始字体大小。 尝试一下
vw viewpoint width,视窗宽度,1vw=视窗宽度的1% 尝试一下
vh viewpoint height,视窗高度,1vh=视窗高度的1% 尝试一下
vmin vw和vh中较小的那个。 尝试一下
vmax vw和vh中较大的那个。 尝试一下
%    

Note 提示: rem与em有什么区别呢?区别在于使用rem为元素设定字体大小时,仍然是相对大小,但相对的只是HTML根元素。

绝对长度

绝对长度单位是一个固定的值,它反应一个真实的物理尺寸。绝对长度单位视输出介质而定,不依赖于环境(显示器、分辨率、操作系统等)。

单位 描述 在线实例
cm 厘米 尝试一下
mm 毫米 尝试一下
in 英寸 (1in = 96px = 2.54cm) 尝试一下
px * 像素 (1px = 1/96th of 1in) 尝试一下
pt point,大约1/72英寸; (1pt = 1/72in) 尝试一下
pc pica,大约6pt,1/6英寸; (1pc = 12 pt) 尝试一下

像素或许被认为是最好的"设备像素",而这种像素长度和你在显示器上看到的文字屏幕像素无关。px实际上是一个按角度度量的单位。

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭
CSS 参考手册

CSS 颜色


颜色是由红(RED),绿(GREEN),蓝(BLUE )光线的显示结合。


颜色值

CSS中定义颜色使用十六进制(hex)表示法为红,绿,蓝的颜色值结合。可以是最低值是0(十六进制00)到最高值是255(十六进制FF)

3个双位数字的十六进制值写法,以#符号开始。

Color Examples

Color Color HEX Color RGB
  #000000 rgb(0,0,0)
  #FF0000 rgb(255,0,0)
  #00FF00 rgb(0,255,0)
  #0000FF rgb(0,0,255)
  #FFFF00 rgb(255,255,0)
  #00FFFF rgb(0,255,255)
  #FF00FF rgb(255,0,255)
  #C0C0C0 rgb(192,192,192)
  #FFFFFF rgb(255,255,255)

尝试一下 »


1600多万个不同的颜色

红,绿,蓝值从0到255的结合,给出了总额超过1600多万不同的颜色(256 × 256 ×256)。

现代大多数显示器能够显示至少16384种颜色。

如果你看看下面的颜色表,你会看到从0到255不同的红灯颜色。

要看到充满色彩混合时红灯从0到255变化,单击十六进制或RGB值。

红光 16进制值 RGB
#000000 rgb(0,0,0)
#080000 rgb(8,0,0)
#100000 rgb(16,0,0)
#180000 rgb(24,0,0)
#200000 rgb(32,0,0)
#280000 rgb(40,0,0)
#300000 rgb(48,0,0)
#380000 rgb(56,0,0)
#400000 rgb(64,0,0)
#480000 rgb(72,0,0)
#500000 rgb(80,0,0)
#580000 rgb(88,0,0)
#600000 rgb(96,0,0)
#680000 rgb(104,0,0)
#700000 rgb(112,0,0)
#780000 rgb(120,0,0)
#800000 rgb(128,0,0)
#880000 rgb(136,0,0)
#900000 rgb(144,0,0)
#980000 rgb(152,0,0)
#A00000 rgb(160,0,0)
#A80000 rgb(168,0,0)
#B00000 rgb(176,0,0)
#B80000 rgb(184,0,0)
#C00000 rgb(192,0,0)
#C80000 rgb(200,0,0)
#D00000 rgb(208,0,0)
#D80000 rgb(216,0,0)
#E00000 rgb(224,0,0)
#E80000 rgb(232,0,0)
#F00000 rgb(240,0,0)
#F80000 rgb(248,0,0)
#FF0000 rgb(255,0,0)

灰阶

灰阶代表了由最暗到最亮之间不同亮度的层次级别,为了使您更容易选择合适的灰色,我们已编制了灰色色调的表:
Gray Shades HEX RGB
#000000 rgb(0,0,0)
#080808 rgb(8,8,8)
#101010 rgb(16,16,16)
#181818 rgb(24,24,24)
#202020 rgb(32,32,32)
#282828 rgb(40,40,40)
#303030 rgb(48,48,48)
#383838 rgb(56,56,56)
#404040 rgb(64,64,64)
#484848 rgb(72,72,72)
#505050 rgb(80,80,80)
#585858 rgb(88,88,88)
#606060 rgb(96,96,96)
#686868 rgb(104,104,104)
#707070 rgb(112,112,112)
#787878 rgb(120,120,120)
#808080 rgb(128,128,128)
#888888 rgb(136,136,136)
#909090 rgb(144,144,144)
#989898 rgb(152,152,152)
#A0A0A0 rgb(160,160,160)
#A8A8A8 rgb(168,168,168)
#B0B0B0 rgb(176,176,176)
#B8B8B8 rgb(184,184,184)
#C0C0C0 rgb(192,192,192)
#C8C8C8 rgb(200,200,200)
#D0D0D0 rgb(208,208,208)
#D8D8D8 rgb(216,216,216)
#E0E0E0 rgb(224,224,224)
#E8E8E8 rgb(232,232,232)
#F0F0F0 rgb(240,240,240)
#F8F8F8 rgb(248,248,248)
#FFFFFF rgb(255,255,255)

网络安全色?

若干年前,当计算机支持最大256个不同的颜色,一个216"网络安全颜色"列表被建议作为Web标准,保留了40个固定的系统颜色。

这在现在看来不是很重要,因为大多数计算机可以显示数百万种不同的色彩,但选择是留给你。

跨浏览器的调色板创建,以确保所有的计算机将显示正确的颜色,运行一个256色调色板:

000000 000033 000066 000099 0000CC 0000FF
003300 003333 003366 003399 0033CC 0033FF
006600 006633 006666 006699 0066CC 0066FF
009900 009933 009966 009999 0099CC 0099FF
00CC00 00CC33 00CC66 00CC99 00CCCC 00CCFF
00FF00 00FF33 00FF66 00FF99 00FFCC 00FFFF
330000 330033 330066 330099 3300CC 3300FF
333300 333333 333366 333399 3333CC 3333FF
336600 336633 336666 336699 3366CC 3366FF
339900 339933 339966 339999 3399CC 3399FF
33CC00 33CC33 33CC66 33CC99 33CCCC 33CCFF
33FF00 33FF33 33FF66 33FF99 33FFCC 33FFFF
660000 660033 660066 660099 6600CC 6600FF
663300 663333 663366 663399 6633CC 6633FF
666600 666633 666666 666699 6666CC 6666FF
669900 669933 669966 669999 6699CC 6699FF
66CC00 66CC33 66CC66 66CC99 66CCCC 66CCFF
66FF00 66FF33 66FF66 66FF99 66FFCC 66FFFF
990000 990033 990066 990099 9900CC 9900FF
993300 993333 993366 993399 9933CC 9933FF
996600 996633 996666 996699 9966CC 9966FF
999900 999933 999966 999999 9999CC 9999FF
99CC00 99CC33 99CC66 99CC99 99CCCC 99CCFF
99FF00 99FF33 99FF66 99FF99 99FFCC 99FFFF
CC0000 CC0033 CC0066 CC0099 CC00CC CC00FF
CC3300 CC3333 CC3366 CC3399 CC33CC CC33FF
CC6600 CC6633 CC6666 CC6699 CC66CC CC66FF
CC9900 CC9933 CC9966 CC9999 CC99CC CC99FF
CCCC00 CCCC33 CCCC66 CCCC99 CCCCCC CCCCFF
CCFF00 CCFF33 CCFF66 CCFF99 CCFFCC CCFFFF
FF0000 FF0033 FF0066 FF0099 FF00CC FF00FF
FF3300 FF3333 FF3366 FF3399 FF33CC FF33FF
FF6600 FF6633 FF6666 FF6699 FF66CC FF66FF
FF9900 FF9933 FF9966 FF9999 FF99CC FF99FF
FFCC00 FFCC33 FFCC66 FFCC99 FFCCCC FFCCFF
FFFF00 FFFF33 FFFF66 FFFF99 FFFFCC FFFFFF

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭
CSS 参考手册

CSS 合法颜色值


CSS Colors

CSS的颜色可以通过以下方法指定:

  • 十六进制颜色
  • RGB颜色
  • RGBA颜色
  • HSL色彩
  • HSLA颜色
  • 预定义/跨浏览器的颜色名称

十六进制颜色

所有主要浏览器都支持十六进制颜色值。

指定一个十六进制的颜色其组成部分是:#RRGGBB,其中RR(红色),GG(绿色)和BB(蓝色)。所有值必须介于0和FF之间。

<p例如,#0000FF值呈现为蓝色,因为蓝色的组成设置为最高值(FF)而其他设置为0。

实例

p
{
background-color:#ff0000;
}

尝试一下 »


RGB颜色

RGB颜色值在所有主要浏览器都支持。

RGB颜色值指定:RGB(红,绿,蓝)。每个参数(红色,绿色和蓝色)定义颜色的亮度,可在0和255之间,或一个百分比值(从0%到100%)之间的整数。

例如RGB(0,0,255)值呈现为蓝色,因为蓝色的参数设置为最高值(255)而其他设置为0。

此外,下面的值定义相同的颜色:RGB(0,0,255),RGB(0%,0%,100%)。

实例

p
{
background-color:rgb(255,0,0);
}

尝试一下 »


RGBA颜色

RGBA颜色值被IE9, Firefox3+, Chrome, Safari,和Opera10+支持。

RGBA颜色值是RGB颜色值alpha通道的延伸 - 指定对象的透明度。

RGBA颜色值指定:RGBA(红,绿,蓝,alpha)。 Alpha参数是一个介于0.0(完全透明)和1.0(完全不透明)之间的参数。

实例

p
{
background-color:rgba(255,0,0,0.5);
}

尝试一下 »


HSL颜色

IE9, Firefox, Chrome, Safari,和Opera 10+.支持HSL颜色值。

HSL代表色相,饱和度和亮度 - 使用色彩圆柱坐标表示。

HSL颜色值指定:HSL(色调,饱和度,明度)。

色相是在色轮上的程度(从0到360)-0(或360)是红色的,120是绿色的,240是蓝色的。饱和度是一个百分比值;0%意味着灰色和100%的阴影,是全彩。亮度也是一个百分点;0%是黑色的,100%是白色的。

实例

p
{
background-color:hsl(120,65%,75%);
}

尝试一下 »


HSLA颜色

HSLA颜色值被IE9, Firefox3+, Chrome, Safari,和Opera10+.支持.

HSLA的颜色值是一个带有alpha通道的HSL颜色值的延伸 - 指定对象的透明度。

指定HSLA颜色值:HSLA(色调,饱和度,亮度,α),α是Alpha参数定义的不透明度。 Alpha参数是一个介于0.0(完全透明)和1.0(完全不透明)之间的参数。

实例

p
{
background-color:hsla(120,65%,75%,0.3);
}

尝试一下 »


预定义/跨浏览器的颜色名称

147是在HTML和CSS颜色规范预定义的颜色名称。你可以查看我们的预定义颜色名称表

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭
CSS 参考手册

CSS 颜色名称


所有浏览器都支持颜色名称

147颜色名称定义在HTML和CSS的颜色规格(17个标准色加上130多个其他)。下表列出了所有这些,连同其十六进制值。

Remark提示: 17种标准颜色:浅绿色,黑色,蓝色,紫红色,灰色,灰色,绿色,石灰,栗色,海军,橄榄,紫,红,银,蓝绿色,白色和黄色。

点击颜色的名称或十六进制值,伴随着不同的颜色名称或值其背景颜色会改变:


按颜色名称排序

列表按十六进制值进行排序

Color Name HEX Color
AliceBlue  #F0F8FF  
AntiqueWhite  #FAEBD7  
Aqua  #00FFFF  
Aquamarine  #7FFFD4  
Azure  #F0FFFF  
Beige  #F5F5DC  
Bisque  #FFE4C4  
Black  #000000  
BlanchedAlmond  #FFEBCD  
Blue  #0000FF  
BlueViolet  #8A2BE2  
Brown  #A52A2A  
BurlyWood  #DEB887  
CadetBlue  #5F9EA0  
Chartreuse  #7FFF00  
Chocolate  #D2691E  
Coral  #FF7F50  
CornflowerBlue  #6495ED  
Cornsilk  #FFF8DC  
Crimson  #DC143C  
Cyan  #00FFFF  
DarkBlue  #00008B  
DarkCyan  #008B8B  
DarkGoldenRod  #B8860B  
DarkGray  #A9A9A9  
DarkGreen  #006400  
DarkKhaki  #BDB76B  
DarkMagenta  #8B008B  
DarkOliveGreen  #556B2F  
DarkOrange  #FF8C00  
DarkOrchid  #9932CC  
DarkRed  #8B0000  
DarkSalmon  #E9967A  
DarkSeaGreen  #8FBC8F  
DarkSlateBlue  #483D8B  
DarkSlateGray  #2F4F4F  
DarkTurquoise  #00CED1  
DarkViolet  #9400D3  
DeepPink  #FF1493  
DeepSkyBlue  #00BFFF  
DimGray  #696969  
DodgerBlue  #1E90FF  
FireBrick  #B22222  
FloralWhite  #FFFAF0  
ForestGreen  #228B22  
Fuchsia  #FF00FF  
Gainsboro  #DCDCDC  
GhostWhite  #F8F8FF  
Gold  #FFD700  
GoldenRod  #DAA520  
Gray  #808080  
Green  #008000  
GreenYellow  #ADFF2F  
HoneyDew  #F0FFF0  
HotPink  #FF69B4  
IndianRed   #CD5C5C  
Indigo   #4B0082  
Ivory  #FFFFF0  
Khaki  #F0E68C  
Lavender  #E6E6FA  
LavenderBlush  #FFF0F5  
LawnGreen  #7CFC00  
LemonChiffon  #FFFACD  
LightBlue  #ADD8E6  
LightCoral  #F08080  
LightCyan  #E0FFFF  
LightGoldenRodYellow  #FAFAD2  
LightGray  #D3D3D3  
LightGreen  #90EE90  
LightPink  #FFB6C1  
LightSalmon  #FFA07A  
LightSeaGreen  #20B2AA  
LightSkyBlue  #87CEFA  
LightSlateGray  #778899  
LightSteelBlue  #B0C4DE  
LightYellow  #FFFFE0  
Lime  #00FF00  
LimeGreen  #32CD32  
Linen  #FAF0E6  
Magenta  #FF00FF  
Maroon  #800000  
MediumAquaMarine  #66CDAA  
MediumBlue  #0000CD  
MediumOrchid  #BA55D3  
MediumPurple  #9370DB  
MediumSeaGreen  #3CB371  
MediumSlateBlue  #7B68EE  
MediumSpringGreen  #00FA9A  
MediumTurquoise  #48D1CC  
MediumVioletRed  #C71585  
MidnightBlue  #191970  
MintCream  #F5FFFA  
MistyRose  #FFE4E1  
Moccasin  #FFE4B5  
NavajoWhite  #FFDEAD  
Navy  #000080  
OldLace  #FDF5E6  
Olive  #808000  
OliveDrab  #6B8E23  
Orange  #FFA500  
OrangeRed  #FF4500  
Orchid  #DA70D6  
PaleGoldenRod  #EEE8AA  
PaleGreen  #98FB98  
PaleTurquoise  #AFEEEE  
PaleVioletRed  #DB7093  
PapayaWhip  #FFEFD5  
PeachPuff  #FFDAB9  
Peru  #CD853F  
Pink  #FFC0CB  
Plum  #DDA0DD  
PowderBlue  #B0E0E6  
Purple  #800080  
Red  #FF0000  
RosyBrown  #BC8F8F  
RoyalBlue  #4169E1  
SaddleBrown  #8B4513  
Salmon  #FA8072  
SandyBrown  #F4A460  
SeaGreen  #2E8B57  
SeaShell  #FFF5EE  
Sienna  #A0522D  
Silver  #C0C0C0  
SkyBlue  #87CEEB  
SlateBlue  #6A5ACD  
SlateGray  #708090  
Snow  #FFFAFA  
SpringGreen  #00FF7F  
SteelBlue  #4682B4  
Tan  #D2B48C  
Teal  #008080  
Thistle  #D8BFD8  
Tomato  #FF6347  
Turquoise  #40E0D0  
Violet  #EE82EE  
Wheat  #F5DEB3  
White  #FFFFFF  
WhiteSmoke  #F5F5F5  
Yellow  #FFFF00  
YellowGreen  #9ACD32  

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭
CSS 参考手册

CSS 颜色十六进制值


按十六进制值排序

列表按颜色名称进行排序

Color Name HEX Color
Black  #000000  
Navy  #000080  
DarkBlue  #00008B  
MediumBlue  #0000CD  
Blue  #0000FF  
DarkGreen  #006400  
Green  #008000  
Teal  #008080  
DarkCyan  #008B8B  
DeepSkyBlue  #00BFFF  
DarkTurquoise  #00CED1  
MediumSpringGreen  #00FA9A  
Lime  #00FF00  
SpringGreen  #00FF7F  
Aqua  #00FFFF  
Cyan  #00FFFF  
MidnightBlue  #191970  
DodgerBlue  #1E90FF  
LightSeaGreen  #20B2AA  
ForestGreen  #228B22  
SeaGreen  #2E8B57  
DarkSlateGray  #2F4F4F  
LimeGreen  #32CD32  
MediumSeaGreen  #3CB371  
Turquoise  #40E0D0  
RoyalBlue  #4169E1  
SteelBlue  #4682B4  
DarkSlateBlue  #483D8B  
MediumTurquoise  #48D1CC  
Indigo   #4B0082  
DarkOliveGreen  #556B2F  
CadetBlue  #5F9EA0  
CornflowerBlue  #6495ED  
MediumAquaMarine  #66CDAA  
DimGray  #696969  
SlateBlue  #6A5ACD  
OliveDrab  #6B8E23  
SlateGray  #708090  
LightSlateGray  #778899  
MediumSlateBlue  #7B68EE  
LawnGreen  #7CFC00  
Chartreuse  #7FFF00  
Aquamarine  #7FFFD4  
Maroon  #800000  
Purple  #800080  
Olive  #808000  
Gray  #808080  
SkyBlue  #87CEEB  
LightSkyBlue  #87CEFA  
BlueViolet  #8A2BE2  
DarkRed  #8B0000  
DarkMagenta  #8B008B  
SaddleBrown  #8B4513  
DarkSeaGreen  #8FBC8F  
LightGreen  #90EE90  
MediumPurple  #9370DB  
DarkViolet  #9400D3  
PaleGreen  #98FB98  
DarkOrchid  #9932CC  
YellowGreen  #9ACD32  
Sienna  #A0522D  
Brown  #A52A2A  
DarkGray  #A9A9A9  
LightBlue  #ADD8E6  
GreenYellow  #ADFF2F  
PaleTurquoise  #AFEEEE  
LightSteelBlue  #B0C4DE  
PowderBlue  #B0E0E6  
FireBrick  #B22222  
DarkGoldenRod  #B8860B  
MediumOrchid  #BA55D3  
RosyBrown  #BC8F8F  
DarkKhaki  #BDB76B  
Silver  #C0C0C0  
MediumVioletRed  #C71585  
IndianRed   #CD5C5C  
Peru  #CD853F  
Chocolate  #D2691E  
Tan  #D2B48C  
LightGray  #D3D3D3  
Thistle  #D8BFD8  
Orchid  #DA70D6  
GoldenRod  #DAA520  
PaleVioletRed  #DB7093  
Crimson  #DC143C  
Gainsboro  #DCDCDC  
Plum  #DDA0DD  
BurlyWood  #DEB887  
LightCyan  #E0FFFF  
Lavender  #E6E6FA  
DarkSalmon  #E9967A  
Violet  #EE82EE  
PaleGoldenRod  #EEE8AA  
LightCoral  #F08080  
Khaki  #F0E68C  
AliceBlue  #F0F8FF  
HoneyDew  #F0FFF0  
Azure  #F0FFFF  
SandyBrown  #F4A460  
Wheat  #F5DEB3  
Beige  #F5F5DC  
WhiteSmoke  #F5F5F5  
MintCream  #F5FFFA  
GhostWhite  #F8F8FF  
Salmon  #FA8072  
AntiqueWhite  #FAEBD7  
Linen  #FAF0E6  
LightGoldenRodYellow  #FAFAD2  
OldLace  #FDF5E6  
Red  #FF0000  
Fuchsia  #FF00FF  
Magenta  #FF00FF  
DeepPink  #FF1493  
OrangeRed  #FF4500  
Tomato  #FF6347  
HotPink  #FF69B4  
Coral  #FF7F50  
DarkOrange  #FF8C00  
LightSalmon  #FFA07A  
Orange  #FFA500  
LightPink  #FFB6C1  
Pink  #FFC0CB  
Gold  #FFD700  
PeachPuff  #FFDAB9  
NavajoWhite  #FFDEAD  
Moccasin  #FFE4B5  
Bisque  #FFE4C4  
MistyRose  #FFE4E1  
BlanchedAlmond  #FFEBCD  
PapayaWhip  #FFEFD5  
LavenderBlush  #FFF0F5  
SeaShell  #FFF5EE  
Cornsilk  #FFF8DC  
LemonChiffon  #FFFACD  
FloralWhite  #FFFAF0  
Snow  #FFFAFA  
Yellow  #FFFF00  
LightYellow  #FFFFE0  
Ivory  #FFFFF0  
White  #FFFFFF  

点我分享笔记


取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

点我查看本站打赏源码!

忘记密码?

如何获取邀请码?

关闭