0

0

CSS基础学习_CSS/HTML

php中文网

php中文网

发布时间:2016-05-16 12:11:11

|

1720人浏览过

|

来源于php中文网

原创

 一.样式表基础

  1. 样式表中每一个条目由选择符(selector)和对应的规则组成,选择符通常是HTML元素名称,也可以是类(class)、标识符(id)、伪类(pseudo class,它们标示了超链接的不同状态)等。

  2. 将样式表(规则)添加到HTML文档中有3种方式:

  ① 外部样式表。

  ② 应用于整个文档的样式,位于

区,包括嵌入样式表和输入样式表。

立即学习前端免费学习笔记(深入)”;

  ③ 行内样式,通过绝大多数元素的style属性实现。

  3. 样式表内的注释用/* …*/。通过将样式规则包围在HTML注释之间可以让那些不支持样式表技术的老浏览器也能正常工作而不是直接把样式规则显示在屏幕上。一般而言,浏览器会忽略不认识的元素和属性,但包围在元素之间的内容会显示出来。

  4. 每一条规则必须以分号;结束。

  5. 如果多个元素共享相同的样式规则,可以使用逗号将它们分组定义。这里分组的概念与分类(class)或标识符(id)的概念不同,前者设置的规则对整个文档中所有的该元素都起作用,而后者只对该元素的一个子集(class或id相同的)起作用。当成组规则和其他规则都涉及到同一个元素时,它们将被组合起来,以生成某个元素的完整的样式。

  举例:成组规则的应用。

h1,h2,h3  {background : yellow; color : black;}

h1    {font-size : 200%;}

h2    {font-size : 150%;}

h3    {font-size : 125%;}

  二.外部样式表

  外部样式表通过在

区内使用元素来引用,元素有三大属性:

  ① rel:指明了链接关系,这里是stylesheet。

  ② href:指明了外部样式表的URL。

  ③ type:指明了样式表的类型,这里是text/css。(其他还有jss)

  举例:外部样式表的引用方式。

Style Sheet Linking Example

  三.应用于整个文档的样式表

  3.1 嵌入样式表

    嵌入样式表的使用方式是直接写在head区的style元素内,从而形成应用与整个文档的样式表。这种情况下只需要用到style元素的type属性。

  举例:嵌入样式表的使用。

  3.2 输入样式表

  输入样式表也是引用一个外部样式表,但不是通过link元素而是在style区内通过@import语法来引用:@import url(css的url地址);可以在

  举例:输入样式表和嵌入样式表的联合使用。

  四.行内样式

  绝大多数元素都有style属性。行内样式信息并不需要从不支持样式表的浏览器中隐藏,因为浏览器会忽略它们不理解的任何属性。

  举例:行内样式的使用。

CSS1 Inline

  五.样式规则的辖域

  以上讨论了样式表的存放位置,现在讨论样式表的作用范围,两者既有联系又有区别:行内样式规则自然决定了它的影响范围是当前元素,而其他样式规则可以灵活地设置规则的作用范围。

  5.1 简单规则

  最简单的规则不妨称它们为文档规则和行内规则。前者可以应用到整个文档中出现的所有的某元素(如所有的

元素),后者只应用到当前元素。

  5.2 id规则

  使用id属性的元素除了可以作为超链接的目标外(类似name属性,在载入页面时将显示定位在页面的指定位置),还可以用它来和样式表中的某个样式规则绑定(比name属性强的地方)。无论是作为超链接的href还是样式规则的选择符,引用id的格式为:#id值。在一个HTML文档中,id属性值必须全局唯一。

  举例:id属性与超链接或样式表的结合使用。

如有

,则可以如下引用:

Go to SecondParagraph 或者

  5.3 class规则

  和id属性一样,class属性也是HTML核心属性之一,多数元素都有该属性。class属性定义了一个元素所属类的名称。class取值不要求唯一,同一类元素的多个实例、多个不同类的元素都可能属于同一个类。使用类可以显著地减少文档中必需的样式规则的数量。样式规则中有两种引用class的格式:

  ① 为所有该类的元素设置样式:.类名{样式规则;}

  ② 为属于该类的所有X元素设置样式:X.类名{样式规则;}

  举例:class规则的使用。

  5.4 伪类(pseudo-classes)和伪元素(pseudo-elements)

  5.4.1 伪类

  一组专门的预定义的类称为伪类,主要用来处理超链接的状态。超链接文字的状态可以通过伪类选择符+样式规则来控制。伪类选择符包括:

  ① a:link:未访问链接

  ② a:visited:已访问链接

  ③ a:active:激活时(链接获得焦点时)链接的颜色

  ④ a:hover:鼠标移到链接上时

  一般a:hover和a:visited链接的状态(颜色、下划线等)应该是相同的。前三者分别对应body元素的link、vlink、alink这三个属性。四个“状态”的先后过程是:a:link ->a:hover ->a:active ->a:visited。另外,a:active不能设置有无下划线(总是有的)。

  举例:伪类的常见状态值

  5.4.2 伪元素

  两个伪元素::first-letter和:first-letter。它们常常和像

这样的元素引导的一段文字一起使用,用来影响其中首字母或者首行的显示,如p:first-letter和p:first-line。

  5.5 情景选择(contextual selection)

  情景选择允许对位于某嵌套层次内的某元素进行样式控制,该规则通过按照嵌套的顺序列出元素的名称,然后给出样式规则来创建。

  举例:使所有出现在

元素内的元素都有黄色的背景颜色。

p strong {background-color : yellow;}

  六.样式规则的继承与嵌套

  该性质允许对元素的多种规则进行组合,既可以从父元素那里继承一些属性,也可以重写某些属性。层叠(CSS中的C)的一般思想有效地创建了一个系统以确定在有多个样式表的文档中哪些规则将被应用。例如,使用id属性为一个特定的

元素指定规则,这相对于通过class规则指定的规则具有优先权,而class规则相对于为

元素自身指定的规则有优先权。相对于应用于整个文档的样式或链接进来的外部样式,通过一个style属性指定的行内样式是更重要的。考虑究竟哪一个规则将最终生效的简单方法是:越专门的规则优先级越高,和标记位置越近的规则优先级越高。

    如果需要一个特定的规则永远不被后面的另一条规则重写,可以用!important声明。对希望绝不被忽略的规则,可以在这个规则的分号之前插入声明!important,它一定要放在规则的最后,分号之前的位置,否则将被忽略。另外,许多老版本的浏览器并不支持该声明。

  举例:使用!important声明不被重写的规则。

P {color:red !important;font-size:12pt;}

元素最终将以红色、24点大小显示。

七.CSS1属性

3.1  font属性

       字模、字体样式、字体大小、字体效果等。常用属性有:

① font-family:字模,Cursive、Fantasy、Comic Sans MS等。

② font-size:字体物理大小或相对大小,物理大小包括:xx-small、x-small、small、medium、large、x-large、xx-large分别对应1~7号字体。

③ font-style:是否斜体, normal、italic、oblique(=italic)。

④ font-weight:文字粗细,normal、bold、bolder、lighter。

⑤ font-variant:小型大写字母,normal、small-caps(小型大写字母)。

3.2  text属性
       文本修饰、文本缩进、单词间距、字母间距、行间距、文本的水平对齐和垂直对齐以及空白大小的控制。常用属性有:

① text-transform:单词大小写,none、capitalize、uppercase、lowercase。

② text-decoration:特殊效果,none、line-through、overline、underline。

③ word-spacing:单词间距,normal、英寸(in)、厘米(cm)、point(pt)、pica(pc)、em(em)、像素(px)。

④ letter-spacing:字母间距。

⑤ vertical-align:文本或图像的垂直定位,baseline(默认)、sub、super、top、text-top、middle、bottom、text-bottom。

⑥ text-align:文本水平对齐方式,left、right、center、justify。

⑦ text-indent:为段落元素第一行产生缩进。

⑧ line-height:当前行的高度,这样设置的行上下会空出相同的距离。

⑨ white-space:控制元素内空格的处理方式,normal(默认)、pre(不压缩空格)、nowrap(即使文本行超出了元素内容的宽度也不会换行)

玻璃钢企业网站源码1.5
玻璃钢企业网站源码1.5

本程序源码为asp与acc编写,并没有花哨的界面与繁琐的功能,维护简单方便,只要你有一些点点asp的基础,二次开发易如反掌。 1.功能包括产品,新闻,留言簿,招聘,下载,...是大部分中小型的企业建站的首选。本程序是免费开源,只为大家学习之用。如果用于商业,版权问题概不负责。1.采用asp+access更加适合中小企业的网站模式。 2.网站页面div+css兼容目前所有主流浏览器,ie6+,Ch

下载

3.3  color属性和background属性

① color:文字颜色

② background-color:背景色

③ background-image:背景图像,背景色显示在背景图像的下面,以提供不透明的背景,比④ background-repeat:决定当背景图像比元素的画布空间小时该如何排列。

repeat:默认,在水平和垂直两个方向上平铺;

repeat-x:仅在水平方向平铺;

repeat-y:仅在垂直方向平铺;

no-repeat:不平铺。

⑤ background-attachment:

scroll:默认,图像和文本一起滚动;

fixed:图像不动,水印效果。

⑥ background-position:背景图像在元素画布空间中的定位方式,指定了图像左上角相对于画布的水平间距和垂直间距。可以用绝对距离(像素)、百分比或特殊关键字。

水平方向关键字:left、center、right

垂直方向关键字:top、center、bottom

举例:background-image属性使用。

b{background-image:url(donut-tile.gif);background-color:white;}

p{background-image:url(picture.gif);background-position:20%  40%;}

body{background-image:url(picture.gif);background-position:center  center;}

3.4  box属性

       像

元素这样的块级元素可以作为屏幕上的一个矩形容器来考虑。可以通过样式属性来控制这些容器的三个方面。可以控制的box属性如下:

① margin属性:决定元素的box的边和相邻元素的边的距离。

② border属性:决定包围元素的边的边框的视觉特性。

③ padding属性:决定元素内它的边和它的实际内容间的距离。

④ height,width和positioning属性:决定由元素产生的box的大小和位置。

3.4.1  margin属性

       单边距的设置规则:

① margin-top:上边距

② margin-right:右边距

③ margin-bottom:下边距

④ margin-left:左边距

举例:单边距的设置。

body {margin-top:20px; margin-bottom:20px; margin-left:30px; margin-right:50px;}

p {margin-bottom:20mm;}

div.fun {margin-left:1.5cm; margin-right: 1.5cm;}

也可以用margin属性来一次性为四条边设置边距。

举例:通过margin属性设置边距的规则。

① 如果仅指定了单个值,则该值被应用到4个“空白”。

如:p{margin:1.5cm;}

② 如果四个值都指定了,则它们按照顺时针方向应用到各个空白(上、右、下、左的顺序),

最后一个距离后加分号,之间用空格相隔。

如:p{margin:10px  5px  15px  5px;}

③ 如果在规则中仅指定了两个或三个值,缺少一边的取值将由它的对边决定。

如:p{margin:10px  5px ;}

将设置上边、下边的空白为10像素,右边、左边的空白为5像素。

3.4.2  border属性

       border位于空白(margin)和间隙(padding)之间。

(一)border-style属性

① none:无边框

② dotted:点边框

③ dashed:虚线边框

④ solid:实线边框

⑤ double:双边框

⑥ groove:蚀刻边框

⑦ ridge:突出边框

⑧ inset:凹进边框

⑨ outset:凸起边框

也可以通过border-top-style,border-right-style,border-bottom-style,border-left-style来单独设置各边的边框类型。当使用border-style来设置四边时,规则同margin类似。

(二)border-width属性

       border-width、border-top-width、border-right-width、border-bottom-width、border-left-width可以分别设置边框的粗细。典型取值有:thin、medium、thick,当然也可取其他长度值。

(三)border-color属性

       border-color、border-top-color、border-right-color、border-bottom-color、border-left-color可以分别设置边框的颜色。

       可以将border-style、border-width、border-color一起应用到border、border-top、border-right、border-bottom、border-left上来实现对相关border属性的快速设置。当三个属性在放在一起设置时,最好按照border-style、border-width、border-color的顺序来给出值。

举例:border组合属性的设置。

#RainbowBox

{

background-color:yellow;

border-top:solid 20px red;

border-right:double 10px blue;

border-bottom:solid 20px green;

border-left:dashed 10px orange;

}

3.4.3  padding属性

       在元素的边框和它的实际内容之间的空白可以通过padding属性来控制。元素的4个间隙(padding)可以通过padding-top、padding-right、padding-bottom、padding-left来设置。与空白(margin)和边框(border)一样,你可以使用速记符形式的padding属性来一次性地对四边的间隙进行设置。

举例:一个涉及margin、border、padding的综合应用。

3.4.4  width、height属性

举例:综合。

P

{

width:300px;

height:400px;

padding:10px;

border:solid 5px;

background-color:yellow;

color:black;

}

3.4.5  float、clear属性

       float属性影响元素在水平方向上的对齐方式,类似与多数html元素的align属性。它使得它所包含的元素“流”向左边或右边,这时我们称这个元素为“流动”元素。 clear属性对“流动”元素进行垂直定位,决定是否继续或清除当前的流动方式,类似于html元素br的clear属性,取值有left、right、both、none(默认)。

3.4.6  display属性

       CSS模型定义了三种类型的显示元素:块级元素、行内元素和列表。display属性允许一个元素的显示类型成为下面四个值中的一个:block,inline,list-item和none。

① none:元素将不会显示出来,并且也不会占据画布空间,这点和设置visibility属性不同。

② block:块级元素。

③ inline:行内元素。

④ list-item:列表元素

举例:display属性使用。

① “关闭”一个段落,使其不显示出来:

p.remove{display:none;}

② 将一个块级元素(比如段落)转变成行内元素,这样就可以不换行显示!

p{display:inline;}

③ 将一个行内元素转变成块级元素,这样就增加了一个回车(换行)!

em{display:block;}

④ 强制一个元素在一定程度上像列表那样显示:

b{display:list-item;}

 

相关文章

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

463

2026.02.13

微博网页版主页入口与登录指南_官方网页端快速访问方法
微博网页版主页入口与登录指南_官方网页端快速访问方法

本专题系统整理微博网页版官方入口及网页端登录方式,涵盖首页直达地址、账号登录流程与常见访问问题说明,帮助用户快速找到微博官网主页,实现便捷、安全的网页端登录与内容浏览体验。

135

2026.02.13

Flutter跨平台开发与状态管理实战
Flutter跨平台开发与状态管理实战

本专题围绕Flutter框架展开,系统讲解跨平台UI构建原理与状态管理方案。内容涵盖Widget生命周期、路由管理、Provider与Bloc状态管理模式、网络请求封装及性能优化技巧。通过实战项目演示,帮助开发者构建流畅、可维护的跨平台移动应用。

64

2026.02.13

TypeScript工程化开发与Vite构建优化实践
TypeScript工程化开发与Vite构建优化实践

本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。

20

2026.02.13

Redis高可用架构与分布式缓存实战
Redis高可用架构与分布式缓存实战

本专题围绕 Redis 在高并发系统中的应用展开,系统讲解主从复制、哨兵机制、Cluster 集群模式及数据分片原理。内容涵盖缓存穿透与雪崩解决方案、分布式锁实现、热点数据优化及持久化策略。通过真实业务场景演示,帮助开发者构建高可用、可扩展的分布式缓存系统。

26

2026.02.13

c语言 数据类型
c语言 数据类型

本专题整合了c语言数据类型相关内容,阅读专题下面的文章了解更多详细内容。

29

2026.02.12

雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法
雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法

本专题系统整理雨课堂网页版官方入口及在线登录方式,涵盖账号登录流程、官方直连入口及平台访问方法说明,帮助师生用户快速进入雨课堂在线教学平台,实现便捷、高效的课程学习与教学管理体验。

14

2026.02.12

豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法
豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法

本专题汇总豆包AI官方网页版入口及在线使用方式,涵盖智能写作工具、图片生成体验入口和官网登录方法,帮助用户快速直达豆包AI平台,高效完成文本创作与AI生图任务,实现便捷智能创作体验。

524

2026.02.12

PostgreSQL性能优化与索引调优实战
PostgreSQL性能优化与索引调优实战

本专题面向后端开发与数据库工程师,深入讲解 PostgreSQL 查询优化原理与索引机制。内容包括执行计划分析、常见索引类型对比、慢查询优化策略、事务隔离级别以及高并发场景下的性能调优技巧。通过实战案例解析,帮助开发者提升数据库响应速度与系统稳定性。

53

2026.02.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Rust 教程
Rust 教程

共28课时 | 6万人学习

JavaScript
JavaScript

共185课时 | 27.2万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 11.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号