在html中引入CSS的方法
在html中,引入css的方法主要有行内式、内嵌式、导入式和链接式4种
1。行内式
即在标记的style属性中设定css样式,这种方式本质上没体现出css的优势,因此不推荐使用。
2。嵌入式
在对页面中各种元素的设置集中写在<head>和</head>之间的,对于单个页面来说,这种方式很方便
<style type="text/css">
div{margin: 0;padding: 0;border:1px red solid;}
</style>
这种方法的使用情况要少的多,最长见得就是访问量大的门户网站。或者访问量较大的企业网站的首页。与第一种方法比起来,优点突出,弊端也明显。优点:速度快,所有的CSS控制都是针对本页面标签的,没有多余的CSS命令;再者不用外链CSS文件。直接在HTML文档中读取样式。缺点就是改版麻烦些,单个页面显得臃肿,CSS不能被其他HTML引用造成代码量相对较多,维护也麻烦些。 但是采用这种方法的公司大多有钱,对他们来说用户量是关键,他们不缺人进行复杂的维护工作。
3。导入式
导入式格式如下:
<style type="text/css">
@import "mystyle.css";
</style>
4。连接式
这种方法可以说是现在占统治地位的引入方法。如同IE与浏览器。这也是最能体现CSS特点的方法;最能体现DIV+CSS中的内容与显示分离的思想,也最易改版维护,代码看起来也是最美观的一种。
格式如下:
<link href="mystyle.css" rel="stylesheet" type="text/css"/>
采用后两种方式后的显示效果略有区别,区别如下:
1。连接式:会在装载页面主体部分之前装载css文件,这样显示出来的网页从一开始就是带有样式效果的。
2。导入式:会在整个页面装载完成后再装载CSS文件,对于有的浏览器来说,在一些情况下,如果网页文件的体积比较大,则会出现先显示无样式的页面,闪烁一下之后再出现设置样式后的效果,从浏览者的感受来说,这是导入式的一个缺陷。
对于一些比较大的网站,为了便于维护,可能会希望把所有的css样式分类别放到几个CSS文件中,这样如果使用连接式引入,就需要几个语句分别导入CSS文件。如果要调整CSS文件的分类,就需要同时调整HTML文件,这对于维护工作来说,是一个缺陷,如果使用导入式,则可以只引进一个总的CSS文件,在这个文件中再导入其他独立CSS文件;而连接则不具备这个特性。因此给大家的建议是:如果仅需要引入一个CSS文件,则使用连接方式,如果需要引入多个CSS文件,则首先用连接方式引入一个“目录”CSS文件,这个“目录”
CSS文件中再使用导入式引入其他CSS文件。
如果希望用javascript来动态决定引入哪个css文件,则必须使用连接式才能实现。
PS:关于link和@import的区别
问题1.到底link和@import有什么区别?
我们先来看看他们的定义
Quote link元素
HTML和XHTML都有一个结构,它使网页作者可以增加于HTML文档相关的额外信息。这些额外资源可以是样式化信息(CSS)、导航助手、属于另 外形式的信息(RSS)、联系信息等等。Quote @import
指定导入的外部样式表及目标设备类型。其实link和@import的最根本区别就是,link是一个html的一个标签,而@import是css的一个标签,
link除了调用css外还可以有其他作用譬如声明页面链接属性,声明目录,rss等等,而@import就只能
调用css。如果单独从外部引用css来说,他们的作用是基本一样,只不过上面的老大不一样而已。
问题2.link合import到底那个更好?
上面说了因为上面的老大不一样,所以在使用上就会有一些细节的区别,不能说总体谁好谁坏,
只能说具体情况具体分析。
1)我要用javascript进行样式选择;
这个时候就要用link,因为link是html元素,可用javascript去控制dom元素最后达到改变样式的效果。
2)应用打印样式;
打印样式顾名思义就是打印页面时候的样式。
这个样式在普通浏览下是没有效果的,只有在打印的时候生效。
如果要为页面单独引用打印样式的话,link和@import都可以的。
3)引用多个样式;
如果要在一个页面上引用多个样式组合产生效果的话,link和@import也是都可以的。
上一篇: [HTML5]重识Html5
下一篇: HTML播放视频
推荐阅读
-
PHP针对常规模板引擎中与CSS/JSON冲突的解决方法
-
当把宽度设为25%时,其他浏览器正常,IE7图片会掉下来,有没有好的解决方法_html/css_WEB-ITnose
-
DIV+CSS三列式布局的实现方法_html/css_WEB-ITnose
-
网页中多个图标在一张图片上,使用css将各图标显示_html/css_WEB-ITnose
-
nth-of-type在选择class的时候需要注意的一个小问题_html/css_WEB-ITnose
-
在子类中怎么使用父类中定义的第三方的类方法呢
-
使用css3背景渐变中的透明度来设置不同颜色的背景渐变_html/css_WEB-ITnose
-
在HTML中利用js调用php的内容-计数器实例_PHP教程
-
HTML中嵌入PHP的简单方法,html嵌入php
-
IE下自己制作选项卡菜单类中遇到的iframe缓存问题_html/css_WEB-ITnose