在学习csscss基础,跟着淼哥学php

上篇文章,我们讲解了php全栈之路最基础的部分html。

今天我们将继续讲解php全栈之路的第二个基础部分css。

今天主要讲解CSS基础、语法规范及CSS的应用方式。

我们来回忆下html,css和javascript的关系。

html相当人体的骨架,css相当于人的外观、而javascript相当于人的行动、动作。

我们已经通过前面的文章学习了网页的骨架制作。那么接着我们来学习网页外观的制作CSS。

什么是CSS?

CSS指层叠样式表(CascadingStyleSheets)主要用来控制HTML文档显示的样子,比如颜色字体位置间距等。

官方表述:CSS是用于(增强)控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。CSS不需要编译,可以直接由浏览器执行(属于浏览器解释型语言)。

HTML标签原本被设计为用于定义文档内容。通过使用h1、p、table这样的标签,HTML的初衷是表达“这是标题”、“这是段落”、“这是表格”之类的信息。

同时文档布局由浏览器来完成,而不使用任何的格式化标签。

由于当时主要有两种主要的浏览器(Netscape和InternetExplorer)不断地将新的HTML标签和属性(比如字体标签和颜色属性)添加到HTML规范中,创建文档内容清晰地独立于文档表现层的站点变得越来越困难。

为了解决这个问题,万维网联盟(W3C),这个非营利的标准化联盟,肩负起了HTML标准化的使命,并在HTML4.0之外创造出样式(Style)。

所有的主流浏览器均支持层叠样式表。

CSS历史

CSS最早被提议是在年;最早被浏览器支持是年;年W3C正式推出了CSS1;年W3C正式推出了CSS2;CSS2.1是W3C现在正在推荐使用的;CSS3现在还处于开发中;CSS3在包含了所有CSS2所支持的基础上更有所改进,所以不必担心兼容问题。

CSS支持多种设备,例如手机、电视、打印机、幻灯片等。但是CSS在浏览器上得到了更好的推广。

如何应用CSS?

在HTML中使用CSS有三种方法:

1、外部样式表(CSS写在一个单独的.css文件中)

用法:在head标签中加入link引入css文件

你可以先建立外部样式表文件*.css,然后使用HTML的link对象。或者使用

import来引入。示例代码:

head

!--Uselinkelements--linkrel=stylesheethref=core.css!--Use

imports--

style

importurl(more.css);/style

/head

注意:在实际开发中,推荐使用HTML的link对象来引入。

2、内部样式表(写在HTML页面中的style标签)EmbeddingaStyleBlock

你可以在你的HTML文档的head标记里插入一个style块对象。示例代码:

head

styletype=text/css

body{

background:#0f0;

}

/style

/head

3、内联样式(直接写在HTML标签上使用style设置样式)InlineStyles

内联定义即是在对象的标记内使用对象的style属性定义适用其的样式表属性。示例代码:

h1style=color:#f00;font-size:px这里是样式/h1

实际应用中,如果把所有样式都写在标签上,就会导致大量的标签样式,不容易维护,推荐使用前两种。

选择器权重

权重主要分为4个等级:

第一等:代表内联样式,如:style=,权值为第二等:代表ID选择器,如:#content,权值为第三等:代表类,伪类和属性选择器,如.content,权值为10第四等:代表类型选择器和伪元素选择器,如divp,权值为1权重这部分了解即可。等学完在看这个权重就十分明白了!

优先级

CSS优先级遵循如下法则:

选择器都有一个权值,权值越大越优先;当权值相等时,后出现的样式表设置要优于先出现的样式表设置;创作者的规则高于浏览者:即网页编写者设置的CSS样式的优先权高于浏览器所设置的样式;继承的CSS样式不如后来指定的CSS样式;在同一组属性设置中标有!important规则的优先级最大

优先级这部分了解即可。

CSS层叠介绍

多重样式将层叠为一个

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

层叠次序

当同一个HTML元素被不止一个样式定义时,会使用哪个样式呢?

一般而言,所有的样式会根据下面的规则层叠于一个新的虚拟样式表中,其中数字4拥有最高的优先权。

1、浏览器缺省设置

2、外部样式表

3、内部样式表(位于head标签内部)

4、内联样式(在HTML元素内部)

因此,内联样式(在HTML元素内部)拥有最高的优先权(和之前的权重差不多),这意味着它将优先于以下的样式声明:head标签中的样式声明,外部样式表中的样式声明,或者浏览器中的样式声明(缺省值)。

CSS的层叠有点类似PS的图层概念。实际上我们为每一个html的元素定义样式的时候,可以有多种多样的定义。具体使用哪一种定义的样式呢?这就要看优先权,或者CSS的权重了。哪个权重计算值高,就使用哪种样式。

还有一个就是层的概念,CSS中可以将不同的样式放置在不同的层之间,正面看有点像我们看到的图片,而利用2D旋转的话。可以看到CSS实际是有多个层次的,具体你的样式在哪个层也可以进行定义。

就像我们看到图片的感觉,如果从上面看,是看不到区别,如果横过来看,其实可以看到CSS是有层次的。

CSS语法

CSS是由一条一条规则组成的,每条规则的格式为

选择器{

属性1:值1;

属性2:值2;

……

}注:学习CSS主要学习的是CSS的声明

selector{property:value;}

css手册介绍

在技术人员开发的时候开发人员不可能记住所有技术信息的,就需要用手册来查找相关的信息。

手册网址:


转载请注明:http://www.aierlanlan.com/cyrz/5235.html