`
skeeey
  • 浏览: 33904 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

CSS基础(一)

阅读更多
早就想系统的学习CSS还有一些网页美化和设计的东西,可惜一直是个计划,现在工作不是很忙了,那就开始学习一下吧,Let's go。

CSS先说点什么呢?先说一下它的历史,Cascading Style Sheet 层叠样式表,最早的规范是level 1,后来改进到level 2,现在2.1得到了个浏览器厂商的广泛支持,未来是3.0。

在互联网最初的时候,页面的基本格式和结构完全是依赖HTML控制的,比如<font>标签等等,这个在JavaScript中的document对象的部分属性中也有体现。后来随着CSS的出现,这种局面得到了控制。最主要的是简化了HTML的编码混乱。HTML专门负责用来标记页面的内容,而页面的外观则交由CSS控制。

但是任何事情都不是绝对的,HTML仍然有很多用于页面外观表现的元素,在恰当的时候使用它们,要比纯粹使用CSS来得好。

OK,回到正题,从最基本的开始

1.在一个页面中如何使用CSS

两种方式,一种是之间在页面编写CSS,另一种是使用外部的CSS文件,对于第一种要使用style标签,例如:
<style>
<!--
p 
{
color:#000000;
}
-->
</style>

在第二种中,有两种形式引入外部CSS文件,一种是使用link标签,列如:
<link herf="test.css" rel="stylesheet" type="test/css"/>

另外一个用style标签 + @import,比如:
<style>
<!--
@import url("test.css");
-->
</style>

同样的,在CSS文件中也可以使用@import,不过对于@import这种方式,要强调一点老式的浏览器不支持,因此利用这个特点,我们可以完成对多浏览器的支持,比如,我们可以把我们的样式分成两部分,一部分是最基本的,任何浏览器都支持,另外一部分只有现代的浏览器才支持,这样我们就可以这样编写CSS代码:
<link herf="basic.css" rel="stylesheet" type="test/css"/>
<style>
<!--
@import url("advanced.css");
-->
</style>

呵呵,怎么样看懂了吧

PS:都是在head标签之间哦

2.CSS选择器
CSS的选择器是CSS的核心功能,通过选择器,可以使我们把样式应用到我们想应用的元素上面。主要的CSS包括这样一些:

类型选择器,比如:
p {color:red;}

ID选择器,比如:
#someid {font-weight:bold;}

类选择器,比如:
.someclass {color:green;}

同时上面的三个选择器是可以随意组合的,比如:
li a {text-decoration:none;}
#someId a {text-decoration:none;}
.someClass a {text-decoration:none;}

而这种组合顺序是依照DOM树的顺序。

伪类选择器,比如:
a:link{color:green;}

但是这种选择器并不是所有浏览器都支持的,比如IE6对好多的伪类都不支持。

通用选择器,比如:
* {color:red;}


子选择器,比如:
对于
<ul id="nav">
<li>Home</li>
<li>Services
<ul>
<li>Design</li>
<li>Development</li>
<li>Consultancy</li>
</ul>
</li>
<li>Contact us</li>
</ul>

如果我们使用
#nav li {color:red}
那么整个li包含的字体颜色都会被制为红色,但是如果我们使用
#nav > li {color:red;}
那么只有ul的第一个子元素li的字体颜色会被设置。

相邻选择器,比如:
h1 + p {font-weight:bold;}


属性选择器,比如:
对于
<abbr title="some title">Some Text</abbr>

我们可以使用
abbr[title] {border-bottom:1px dotted #999;}

我们甚至可以使用abbr[title="some"]或者abbr[title~="some"],来选择某些元素。

注意子选择器,相邻选择器,还有属性选择器ie6都是不支持的。

3.CSS的优先级法则
当两个或更多的规则寻找同一个元素时,那么那个规则其作用呢?CSS通过cascade的过程处理这种冲突,我倒是更愿意把这种方式理解为CSS的优先级,也就是当两个样式冲突时,谁先被优先处理。

首先可以使用!import来提高任何规则的优先性,因为它优先于任何规则,不过ie6不支持,也正是因为ie6不支持,我们可以使用它来完成一些跨浏览器的工作,比如,可以写如下样式:
p {
color:red;!import
color:green;
}

这样就可以,区分ie和其他浏览器了。

接着,CSS的样式遵循以下规则
a 标签内的样式,a=1
b ID选择器的总数
c 类,伪类,属性选择器的总数
d 类型选择器和伪元素的总数

比如:
<a style="">test</a>

根据以上规则,它的优先级就是1000,因为,a=1,b=0,c=0,d=0
再比如:
#nav,#other {...}

它的优先级就是200,因为,a=0,b=2,c=0,d=0

还有一个和优先级很类似的概念,继承,它指的是,子元素继承父元素的某些属性,但是这在不同浏览器中又表现的不一致。

写在后面:DOCTYPE标签,META标签和MIME类型
MIME类型是Multipurpose Internet Mail Extensionsd的简称,这个类型是由web服务器指定的,对于HTTP最主要的是指定了报文的类型,以及传输方式,详情可以参见维基中关于MIME的内容。

而META是HTML中页面本地的标签,其中META标签可以参见w3cshcool中对其的描述

而DOCTYPE是一个很重要的标记,它主要有两方面的功能,一个是有效性的检验,比如如果我们访问的页面是MIME类型正确的XHTML,但是页面的校验不正确,浏览器是不会显示该页面的,另外一个功能是决定浏览器的显示模式,浏览器具有两种模式,一种是标准模式,另外一种是quirks mode,比如,在firefox浏览器中,选择view page info,就可以看到页面的render mode,同时还有一个有趣的现象,比如目前的ie8的确已经对标准的支持做了很大的改进,但是,由于它要支持它一些列的版本,因此如果不指定页面的DOCTYPE的话,它表现的页面其实和ie6没有什么两样。

PS:DOCTYPE Browser Mode Test





3
0
分享到:
评论
2 楼 skeeey 2009-09-21  
精通CSS高级Web标准解决方案,还可以,不过读起来还不是很爽,建议多练,多看,共同努力
1 楼 ylsuccess 2009-09-11  
兄弟 有没有 推荐的CSS书看下?
最近对CSS有点兴趣 想了解 了解

相关推荐

    DIV+CSS教程——第一天XHTML_CSS基础知识

    DIV+CSS教程——第一天XHTML_CSS基础知识

    上百个CSS实例|CSS基础学习|CSS入门基础|CSS样式集合

    【CSS基础学习】是网页设计领域中的重要环节,它是一种用于描述HTML或XML(包括如SVG、MathML等各种XML方言)文档样式的样式表语言。CSS(层叠样式表)让网页设计者能够分离内容与表现,使得网页设计更加灵活且易于...

    CSS基础学习源码

    本“CSS基础学习源码”是一个适合初学者的资源包,提供了丰富的实践材料,帮助理解并掌握CSS的基础知识。 首先,我们来详细探讨CSS的基础概念: 1. **选择器与声明**:CSS的核心在于选择器和声明。选择器用于定位...

    CSS基础教程PDF

    ### CSS基础教程知识点详解 #### 一、CSS简介 **CSS**,全称为 **Cascading Style Sheets**(级联样式表),是一种用于定义HTML文档布局的语言。它可以帮助开发者更好地控制网页的外观,如字体、颜色、间距、大小...

    CSS基础教程 源代码

    书名:CSS基础教程 作者:(英)柯林森 著,刘志忠 等译 来源:人民邮电出版社 出版时间:2007年09月 ISBN:9787115164629 定价:49元 内容介绍: 本书是优秀的CSS 入门书,重点讲述了如何使用CSS 实现基于Web ...

    css基础教程-适合初学者

    在IT领域,CSS...总结,学习CSS基础不仅涉及语法和选择器,还包括布局、响应式设计以及预处理器的使用。通过不断实践和了解这些概念,初学者可以逐步提升CSS技能,从而更好地设计和构建美观、功能完善的网页。

    总结CSS基础属性(一)

    CSS基础属性总结 CSS(层叠样式表)是一种用于描述页面样式的语言,它使得 HTML 结构与样式分离,提高网站的开发效率和维护性。下面是 CSS 基础属性的总结。 一、CSS 的定义和作用 CSS 全称为层叠样式表,它是一...

    html&css入门基础知识点.pdf

    HTML和CSS基础知识点 HTML是用来描述网页的一种语言,指的是超文本标记语言(Hyper Text Markup Language),它不是一种编程语言,而是一种标记语言。HTML使用标记标签来描述网页的结构和内容。 标记语言是一套...

    CSS基础知识-1.pdf

    ### CSS基础知识解析 #### 一、CSS简介 - **1.1 HTML的局限性** HTML是一种用于构建网页内容的标准标记语言。它主要用于定义网页内容的结构和意义,例如使用`&lt;h1&gt;`标签来表示一级标题,使用`&lt;p&gt;`标签来表示段落...

    CSS基础知识.pdf

    【CSS基础知识详解】 CSS,全称为Cascading Style Sheets,中文通常翻译为“层叠样式表”,是用于控制网页布局和样式的规范。它弥补了HTML在表现层设计上的局限性,让网页设计更加灵活多样。自IE 3.0开始,浏览器...

    css基础代码

    ### CSS基础代码详解 #### CSS入门精要:掌握核心概念与实践技巧 **CSS(Cascading Style Sheets)**,即层叠样式表,是一种用于描述网页文档(如HTML或XML)外观和格式的标记语言。它使得网页设计更加灵活、高效...

    前端CSS基础-常规流练习.rar

    在"前端CSS基础——常规流中练习对应图片代码"中,你可能会看到如何通过CSS控制元素在常规流中的位置和大小。例如,可以使用`display`属性来改变元素的行为,将一个内联元素转换为块级元素,或者创建一个内联块级...

    Css基础 (一).doc

    Css 基础知识点汇总 Css 基础知识点汇总是 Css 知识点的集合,包括 Css 语法、选择器的类型和种类、如何调用 Css,以及 Css 中的一些属性设置。以下是 Css 基础知识点的详细解释: 一、Css 概念 Css 指层叠样式表...

    CSS基础入门总结(很详细的哟)

    一、CSS语法规范 二、CSS选择器 (1)基础选择器 (i)标签选择器 (ii)类选择器 (iii)id选择器 (iv)通配符选择器 (2)复合选择器 (i)后代选择器 (ii)子代选择器 (iii)并集选择器 (iv)伪类选择器 三、...

    HTML+CSS基础知识点.pdf

    HTML+CSS 基础知识点总结 HTML+CSS 是前端开发的基础技术,掌握 HTML、CSS 和 JavaScript 语言是必不可少的。下面是 HTML+CSS 基础知识点总结: 1. HTML 是网页内容的载体,内容就是网页制作者放在页面上想要让...

    CSS基础知识超全整理

    整理好的一份关于css的知识大纲,希望能够帮助到大家,可以用来复习回顾

    尚硅谷前端入门html+css零基础教程,零基础前端开发html5+css3视频尚品汇项目源码

    【标题】中的“尚硅谷前端入门html+css零基础教程”指的是一个由尚硅谷教育机构提供的,面向初学者的前端开发课程,主要涵盖了HTML(超文本标记语言)和CSS(层叠样式表)的基础知识。这个教程是为那些对前端开发...

    CSS基础代码

    **CSS基础代码详解** 在网页设计中,CSS(Cascading Style Sheets)是不可或缺的一部分,它用于控制网页的布局和样式。本资料包包含了作者学习CSS时编写的代码,非常适合CSS初学者作为学习素材。通过阅读和理解这些...

Global site tag (gtag.js) - Google Analytics