层叠样式表(Cascading Style Sheets,CSS)可以影响文档的表现。CSS是依附于文档的,如果不存在某种文档,CSS基本上是没有用的。

为什么会有CSS

在web早期(1990-1993),HTML由一些结构化元素组成,用于描述段落、超链接、列表和标题等。简单来说刚开始的时候,HTML是个非常有限的语言,并不关心外观,一篇文章,里面有一些超链接。大概张这个样子。

后来有了第一个图形浏览器Mosaic,把浏览网页的体验变得更好,各种网站就开始涌现了。然后人们对网页的需求也变得越来越高,比如,有些人希望他们的网站用户看到的是一个大写加粗的牛X,O(∩_∩)O哈哈哈~但是当时的HTML有点满足不了需求,需要新的标签来展示。就这样出现了一些后来被嫌弃的专门负责表现的标签,如<font>,<big>等。

没过几年,这种做法就带来了严重的后果,那就是一片混乱。可以想象一下如果只能用标签来完成页面的布局和展示,有可能会全是<font>,跟现在提倡的结构化语义化的HTML正好是相反的。因为font标签没有任何结构上的意义,这样文档就非常乱,降低可用性。那这样做的目的只是为了满足视觉上的需求。但是带来了一下几个问题:

  • 非结构化的页面建立内容非常困难。小爬虫一进来就蒙了,标题呢?关键内容呢?怎么全是font,big?算了应该没有我要找的东西,我还是走吧....
  • 缺乏结构性会降低可访问性。前面也说了,只满足了视觉需求,那其他种类的浏览器,比如语音合成浏览器。
  • 高级页面表现只能应用于某种文档结构。
  • 结构化的标记更易于维护。

那CSS作为救星应运而生啦(1995年)。HTML负责结构化标记,CSS负责丰富表现,完美~~

CSS这么厉害,总结起来就是因为以下原因:

  • 丰富的样式
  • 易于使用。把一些视觉效果的命令都集中在一个方便的位置,而不是分散在文档的各个角落。
  • 在多个页面上使用样式。
  • 层叠。规定了一些冲突规则。
  • 缩减文件大小。
  • 为将来做准备。

CSS权威指南学习笔记 —— 初步认识CSS的更多相关文章

  1. CSS权威指南学习笔记系列(1)CSS和文档

    题外话:HTML是一种结构化语言,而CSS是它的补充:这是一种样式语言.CSS是前端三板斧之一,因此学习CSS很重要.而我还是菜鸟,所以需要加强学习CSS.这个是我学习CSS权威指南的笔记,如有不对, ...

  2. css权威指南学习笔记 —— css选择器

    1,选择器:选择器的一些基本常用规则基本都记得,w3c上都有,平时也常用,不常用的一些后代选择器经常就忘记了.一些归纳一下后代选择器,加深一下印象: a:子选择器:   p>a  a是直接是p的 ...

  3. CSS权威指南学习笔记 —— HTML元素分类

    HTML文档由各种元素组成.比如,p.table.span等等.每个元素都会对文档的表现有所影响.CSS中,每个元素都会生成一个框(传说中的盒子),其中包含元素内容. 元素可以根据它的创建方式分为两种 ...

  4. css权威指南学习笔记

    2016-08-03 1,继承 一般大多数框模型属性都是不能继承的.如:padding .margin .border .background 都不能继承. 继承值,完全没有特殊性.(就是优先级最低) ...

  5. css权威指南学习笔记--列表与生成内容

    列表属性 1.list-style-type:css2多于css2.1 2.list-style-image:有继承,子级列表会继承该图像 3.list-style-position:inside|o ...

  6. HTTP权威指南-学习笔记

    目录 HTTP权威指南-学习笔记 HTTP: Web的基础 URL与资源 HTTP报文 连接管理 HTTP结构 Web服务器 代理 缓存 集成点: 网关,隧道及中继 Web机器人 识别,认证与安全 客 ...

  7. JavaScript 权威指南-学习笔记(一)

    本文所有教程及源码.软件仅为技术研究.不涉及计算机信息系统功能的删除.修改.增加.干扰,更不会影响计算机信息系统的正常运行.不得将代码用于非法用途,如侵立删! ## JavaScript 权威指南-学 ...

  8. css权威指南读书笔记

    今天翻手机,翻到了许久之前看css权威指南时的笔记,遂移到博客中来. 1.属性选择器p.one class名为one的p元素p[class][name] 含有class和name属性的p元素p[cla ...

  9. css权威指南读书笔记-第10章浮动和定位

    这一章看了之后真是豁然开朗,之前虽然写了圣杯布局和双飞翼布局,有些地方也是模糊的,现在打算总结之后再写一遍. 以下都是从<css权威指南>中摘抄的我认为很有用的说明. 浮动元素 一个元素浮 ...

随机推荐

  1. Windows Live Writer针对CNBLOG的代码高亮插件

    一,CodeHighlighter 1. 下载插件 下载地址:http://files.cnblogs.com/files/cmt/WindowsLiveWriter.CNBlogs.CodeHigh ...

  2. 2台linux机器免密码互相登陆

    一,如何使2台机器不需要密码互相登陆到对方呢? 这个和使用密钥的登陆Linux系统非常相似,也是将自己的公钥传到要登录的服务器上去修改权限即可. 1,A机器: 执行ssh-keygen命令,一路回车. ...

  3. ffmpeg的使用

    -i "转换前的视频绝对路径\文件名.mp4" -movflags faststart+rtphint "转换后的视频绝对路径\文件名.mp4" 上面这条语句是 ...

  4. exchange邮箱的”单点登陆“

    在跟exchange集成登陆时,通常有这样的需求,用户需要点击邮件链接的时候直接打开,不再需要输入用户名密码,实现所谓的单点登陆. 通常有两种方式 1.form认证 登陆原理:用js模拟表单登陆 代码 ...

  5. ASP.net+SQL server2008简单的数据库增删改查 VS2012

    工具:VS2012 数据库:SQL server 简单说明:根据老师上课给的代码,进行了简单的改正适用于VS2012环境,包括注册.登录.查询.修改.删除功能,多数参考了网上的代码 百度云源代码连接t ...

  6. 用户"IIS APPPOOL\xxxxxxxx"登录失败解决方案

    Server Error in '/' Application.-------------------------------------------------------------------- ...

  7. excel笔记

    提取单元格中的数字部分 =MID(LOOKUP(1,-(1&MID(A1,MIN(FIND({0;1;2;3;4;5;6;7;8;9},A1&1/17)),ROW($1:$15)))) ...

  8. list集合接口

    import java.util.ArrayList; import java.util.List; class Phone { private String brand; private doubl ...

  9. struts2框架的核心内容

     Struts1和Struts2的区别和对比: Action 类: • Struts1要求Action类继承一个抽象基类.Struts1的一个普遍问题是使用抽象类编程而不是接口,而struts2的Ac ...

  10. js里面“===”与“==”的区别

    首先,== equality 等同,=== identity 恒等. ==, 两边值类型不同的时候,要先进行类型转换,再比较. ==,不做类型转换,类型不同的一定不等.  下面分别说明: 先说 === ...