先了解:

【1】         “Table”和“DIV”这两个网页元素诞生的目的不同,首先Table诞生的目的是为了存储数据,而DIV诞生的目的就是为了架设页面结构

W3C,是World Wide Web Consortium的缩写。中文是W3C组织或者万维网联盟。W3C标准不是一个标准,而是一系列标准的集合。

包括三部分的标准:结构(Structure)、表现(Presentation)行为(Behavior)。

结构化标准语言主要包含XHTML和XML,表现标准语言主要包含CSS,行为标准主要包含对象模型(如W3C DOM)、ECMAscript等

一般不能说是“DIV+CSS",要说就说成”XHTML+CSS",两种叫法倾向于后者。

【2】    CSS控制页面有四种方式:行内样式、内嵌样式、链接样式、导入样式

1. 行内样式如:<p style="text-indent: 4px; font-size:12px;"></p>

会导致HTML页面不够纯净,文件体积过大。不利于搜索蜘蛛爬行,从而导致后期维护成本高。

2: 内嵌样式如: <head>...<style type="text/css">

#left_side{ color:#909090; font-size: 24px; }        </style>...</head>

假设一个站点有非常多页面。内嵌方式每一个文件都会变大,后期维护难度也大,假设文件非常少,CSS代码也不多。这样的方式也顶号好~

3: 链接样式如:<head>...<link rel="stylesheet" type="text/css" href="../style.css" /> ...</head>

这样的样式将HTML文件和CSS文件彻底分成两个或者多个文件,实现了页面框架HTML代码与表现CSS代码的全然分离,使得前期制作和后期维护都十分方便。推荐使用这样的方式。

4: 导入样式如: @import "style.css" ;

在HTML初始化时,会被导入到HTML文件里,成为文件的一部分,类似内嵌样式

================================================================================================================

【3】链接样式与导入样式的差别:

link

link就是把外部CSS与网页连接起来。



@import


import文字上与link的差别就是它能够把在一个CSS文件里引入其他几个CSS文件。



为什么使用@import

大部分使用@import方式的人是由于旧的浏览器是不支持@import方式的,这意味着我们能够使用@import来引入仅仅让现代浏览器解析的CSS样式.

还有一个基本的原因就是当你的网页须要引入几个外部CSS文件时.你能够使用link引入一个CSS,然后在这个CSS文件里用@import方式引入其他几个CSS文件.这样看起来更easy管理.



为什么使用link

使用link方式一个最基本的原因就是你能够让用户切换CSS样式.现代浏览器如Firefox,Opera,Safari都支持rel="alternate stylesheet"属性(就可以在浏览器上选择不同的风格),当然你还能够使用Javascript使得IE也支持用户更换样式.



@import的小毛病

假设你网页head标签里面十分简单,仅仅有@import属性的话,当用户浏览的网速较慢时,他会看到一个没有风格样式的页面,然后随着CSS文件被下载完毕才干够看到应有的风格.要避免这种问题,你须要确保head里至少有一个script或是link标签.

04-11更新:  @import会使得CSS总体加载时间变长.而且在IE中会导致文件下载次序被更改,比如放置在@import后面的script文件会在CSS之前被下载.



究竟要用那种方式

就眼下看来小型的站点还是使用link比較合适(或者说比較流行),当然假设将来我们须要把CSS进行模块化管理也肯定要用到@import.

举个样例

能够用此做法:建立三个CSS文件(base.css/common.css/page.css),把他们@import到还有一个CSS文件(style.css,其他名字也能够,随便你),然后在页面上仅仅连接style.css,这样能够更好实现代码的维护



Web--CSS控制页面(link与import方式差别)的更多相关文章

  1. Web--CSS控制页面(link与import方式区别)

    先了解: [1]         “Table”和“DIV”这两个网页元素诞生的目的不同,首先Table诞生的目的是为了存储数据,而DIV诞生的目的就是为了架设页面结构 W3C,是World Wide ...

  2. 【学习DIV+CSS】2. 学习CSS(一)--CSS控制页面样式

    1. CSS如何控制页面 使用XHTML+CSS布局页面,其中有一个很重要的特点就是“结构与表现相分离”(结构指XHTML,表现指CSS).有人这样描述这种分离的关系,结构XHTML好比一个人,表现C ...

  3. Flex中使用CSS控制页面样式

    Using file: Stylebounding.mxml Stylebounding2.mxml myCSS0329.css 在Flex4中使用CSS控制样式,既可以直接在MXML文件中写样式,也 ...

  4. 《Two Days DIV + CSS》读书笔记——CSS控制页面方式

    1.1 你必须知道的知识 (其中包括1.1.1 DIV + CSS的叫法解释:1.1.2 DIV + CSS 名字的误区:以及1.1.3 W3C简介.由于只是背景知识,跳过该章.) 1.2 你必须掌握 ...

  5. 引用外部CSS的link和import方式的分析与比较

    很多网页中的 CSS 链接与引用是这样写的: <style type="text/css" media="screen"> @import url( ...

  6. CSS的导入方式:link与import方式的区别

    在前端开发中,加载CSS样式文件有两种方式:link方式与import方式,它们之间的区别主要有以下几点: 1.兼容性不一样 link是一个HTML标签,所以它不存在兼容性问题,而import方式则具 ...

  7. CSS文件引入link和@import 区别

    1.(本质区别)link 属于 HTML 标签,而 @import 完全是 css 提供的一种导入 css 文件的规则. 2.文件加载时机有差别: 当一个页面被加载的时候,link 引用的 css 会 ...

  8. css中:link和@import的区别

    两者都是外部引用css的方式.但是有一定的区别: 1. 从属关系:link是一个xhtml标签,除了加载css外,还可以定义 RSS.rel 连接属性等: @import属于css范畴,只能加载css ...

  9. CSS控制样式的三种方式优先级对比验证

    入职已经一个月了,自此后,就好久没有写过博客了,在此先跟关注我的博友们说声抱歉.今天,在公司的一个培训作业的驱动以及伟哥那句“再不写博客就开除你”的监督下,我终于重拾旧爱,再次登录博客园,继续与大家分 ...

随机推荐

  1. Redisclient连接方式Hiredis简单封装使用,连接池、屏蔽连接细节

    工作须要对Hiredis进行了简单封装,实现功能: 1.API进行统一,对外仅仅提供一个接口. 2.屏蔽上层应用对连接的细节处理: 3.底层採用队列的方式保持连接池,保存连接会话. 4.重连时採用时间 ...

  2. 小白算法之路-非确定性多项式(non-deterministic polynomial,缩写NP)

    前端小白的算法之路   时隔多日终于解决了埋在心头的一道难题,霎时云开雾散,今天把一路而来碰到的疑惑和心得都记录下来,也算是开启了自己探索算法的大门. 问题背景 曾经有一个年少轻狂的职场小白,在前端圈 ...

  3. POJ 2323 贪心

    题意: 思路: 贪 贪 贪 如果当前的c>之前的c+s 那么之前的合适 一直贪下去就好了 //By SiriusRen #include <cstdio> #include < ...

  4. Kinect 开发 —— 近距离探测

    如何将Kinect设备作为一个近距离探测传感器.为了演示这一点,我们处理的场景可能在以前看到过.就是某一个人是否站在Kinect前面,在Kinect前面移动的是人还是什么其他的物体.当我们设置的触发器 ...

  5. iOS 创建静态库文件时去掉当中的Symbols

    在project中创建静态库文件时.默认会将一些Symbols加到静态库文件里.这样做有两个缺点: 1.假设引用静态库文件的project中发生了bug.就会直接跳转到静态库的源代码. 也许有人问:静 ...

  6. Java开发者最经常使用19个Linux命令

    1.查找文件 find / -name filename.txt 依据名称查找/文件夹下的filename.txt文件. 2.查看一个程序是否执行 ps –ef|grep tomcat 查看全部有关t ...

  7. OPENSSL 制作 Ikev2证书

    OPENSSL 制作 Ikev2证书 在一个 VPS 上配置 IKEV2 VPN 服务器时,用 OPENSSL 制作了所需的数字证书,奇怪的怎么弄都无法连接服务器,一直提示 "IKE_SA ...

  8. position(static-relative-absolute-fixed),margin(top-right-bottom-left),top-right-bottom-left

    最近写css遇到一些问题,所以准备写下来捋一下思路. 1.position=satic下看margin的使用.(top-right-bottom-left在这种case下无效) 1-1)margin ...

  9. JS学习笔记 - Try / Catch / Finally

    <body> <p>请输入 5 和 10 之间的一个数:</p> <input id="demo" type="text&quo ...

  10. [Python] The get() method on Python dicts and its "default" arg

    # The get() method on dicts # and its "default" argument name_for_userid = { 382: "Al ...