加载css link与@import的区别

加载css link与@import的区别:其实 link 与 @import 在显示效果上还是有很大区别的,基本上来看 link 的加在会在页面显示之前全部加在完全,而 @import 会是读取完文件之后加在,所以如果网速很好或很快的情况下,会出现先开始无css定义,而后加载css定义。@import加载页面时开始的瞬间会有闪烁(无样式表的页面),然后才恢复正常(加载样式后的页面),Link没有这个问题。 他们从方法上是一样的,只是在浏览器识别上有点差距,link在支持CSS的浏览器上都支持而@import只在5.0一行的版本有效,而且还能用于浏览器过滤也就是hack的使用,兼容一些老版本的浏览器。所以最好还是使用link通用型更强,但是对于高版本的浏览器,也就是现在的浏览器来说,其实都一样,这是个没有太大意义的区分 。 关键字:link @import css 区别 网页设计中使用CSS样式表,一般有三种方式: 1、直接使用: 在<head>与</head>之间, <style> <!-- * { margin: 0; padding: 0; } --> </style> 2、使用link引用样式表文件: <link rel="stylesheet" rev="stylesheet" href="style.css" type="text/css"> 3、用import引用样式表: <style type="text/css"> @import url(style.css); </style> 第一种是直接在html页面上进行css书写,而第二种和第三种是采用外部引用样式单独提取文件。这三种方式都可以达到相同的效果。 那么,到底link和@import有什么区别? 我们先来看看他们的定义和参数。 link元素 HTML和XHTML都有一个结构,它使网页作者可以增加于HTML文档相关的额外信息。这些额外资源可以是样式化信息(CSS)、导航助手、属于另 外形式的信息(RSS)、联系信息等等。 @import 指定导入的外部样式表及目标设备类型。 其实link和@import的最根本区别就是:link是一个html的一个标签,而@import是css的一个标签, link除了调用css外还可以有其他作用譬如声明页面链接属性,声明目录,rss等等,而@import就只能调用css。如果单独从外部引用css来说,他们的作用是基本一样。 下面说说两个不同用法: 1、我需要用javascript进行样式选择。比如有的网页提供不同的配色方案,浏览者点个按钮就可以改变整个网页的配色;又例如本文右上角的字体大小选择。这个时候就要用link,因为link是html元素,可用javascript去控制dom元素最后达到改变样式的效果。 看下列代码: <link rel="stylesheet" href="/css/styles.css" type="text/css" media="screen" /> <link rel="stylesheet" href="/css/orange.css" type="text/css" media="screen" title="orange" /> <link rel="alternate stylesheet" href="/css/blue.css" type="text/css" media="screen" title="blue" /> <link rel="alternate stylesheet" href="/css/pink.css" type="text/css" media="screen" title="pink" /> <link rel="alternate stylesheet" href="/css/slate.css" type="text/css" media="screen" title="slate" /> 这是一段很经典的改变页面风格的代码,因为我们今天主要讲的是link和@import,所以我这里只列出了引用css部分。 我们先来了解下link的参数: rel:声明Link对象的作用或者类型; href:引用css的文件路径; tyle:文件类型; media:应用的设备;比如:"all";"screen",应用在屏幕上;"print",打印的时候应用(注1),等等。 title:是css的名称; 这段代码中一共有5个css,第一个是基本样式,而其他四个是风格样式,利用javascript去控制默认显示的样式title就ok了。 注1:我要在应用打印样式; 打印样式顾名思义就是打印页面时候的样式。 这个样式在普通浏览下是没有效果的,只有在打印的时候生效。 如果要为页面单独引用打印样式的话,link和@import都可以的。 link代码: <link rel="stylesheet" href="/css/styles.css" type="text/css" media="print" /> @import代码: <style type="text/css"> @import url(foo.css) print; </style> 另外对于css来说还有一种方式@media: @media print { @import "print.css" } 用@media先制定设备为 print,然后再用@impor链接 大型网站,为了以后改版方便,会制作多个样式表,一般使用@import引用。 比如,在web页面里使用 <link rel="stylesheet" rev="stylesheet" href="style-2008.css" type="text/css"> 在style-2008.css里使用 @import url(main-2008.css); @import url(foot-2008.css); 和@import引用css文件方法的区别 来源:cssbbs.com 作者:cssbbs [日期:2008-10-29] [字体:大 中 小] <link>元素所参考的样式用户可以自由的选择加以改变,而导入的样式表单就自动的与剩下的样式表融合在一起了 CSS与HTML文档结合的4中方法: 1 使用<link>元素链接到外部的样式文件 2 在<head>元素中使用"style"元素来指定 3 使用CSS "@import"标记来导入样式表单 4 在<body>内部的元素中使用"style"属性来定义样式 一个例子: <html> <head> <title>css demo</title> <link rel=stylesheet type="text/css" href="css/name.css" title="cool"> <style> @import url(css/name2.css); H1 {color:red} <style> </head> <body> <H1>CSS demo by JET</H1> <p style="color:blue">good luck. </body> </html> 1 用link进行引用 <link rel="stylesheet" type="text/css" href="my.css"> 2 用import进行引用 <style type="text/css"> @import url(my.css); </style> 第一种是直接在html页面上进行css书写,而第二种和第三种是采用外部引用样式单独提取文件。 问题1.到底link和@import有什么区别? 我们先来看看他们的定义 link元素 HTML和XHTML都有一个结构,它使网页作者可以增加于HTML文档相关的额外信息。这些额外资源可以是样式化信息(CSS)、导航助手、属于另 外形式的信息(RSS)、联系信息等等。 @import 指定导入的外部样式表及目标设备类型。 其实link和@import的最根本区别就是,link是一个html的一个标签,而@import是css的一个标签, link除了调用css外还可以有其他作用譬如声明页面链接属性,声明目录,rss等等,而@import就只能 调用css。如果单独从外部引用css来说,他们的作用是基本一样,只不过上面的老大不一样而已。:) 问题2.link合import到底那个更好? 上面说了因为上面的老大不一样,所以在使用上就会有一些细节的区别,不能说总体谁好谁坏, 只能说具体情况具体分析。 1)我要用javascript进行样式选择; 这个时候就要用link,因为link是html元素,可用javascript去控制dom元素最后达到改变样式的效果。 看下列代码 <link rel="stylesheet" href="/css/styles.css" type="text/css" media="screen" /> <link rel="stylesheet" href="/css/orange.css" type="text/css" media="screen" title="orange" /> <link rel="alternate stylesheet" href="/css/blue.css" type="text/css" media="screen" title="blue" /> <link rel="alternate stylesheet" href="/css/pink.css" type="text/css" media="screen" title="pink" /> <link rel="alternate stylesheet" href="/css/slate.css" type="text/css" media="screen" title="slate" /> 这是一段很经典的改变页面风格的代码,因为我们今天主要讲的是link和import,所以我这里只列出了引用css部分。 我们先来看看link里面个个属性都是表达了什么意思: [1]rel:用来声明链接对象的作用或者类型。 譬如上面的的代码:"stylesheet"表示链接一个默认的css,而"alternate stylesheet"折表示备选的css [2]href:这个就不用我说了吧,引用css的文件路径。 [3]tyle:文件类型 [4]media:应用的设备,"screen"是说明应用在屏幕上。 [5]title:是css的名称。 这段代码中一共有5个css,第一个是基本样式,而其他四个是风格样式,利用javascript去控制默认显示的样式title就ok了。 2)我要在应用打印样式; 打印样式顾名思义就是打印页面时候的样式。 这个样式在普通浏览下是没有效果的,只有在打印的时候生效。 如果要为页面单独引用打印样式的话,link和@import都可以的。 link代码 <link rel="stylesheet" href="/css/styles.css" type="text/css" media="print" /> @import代码 <style type="text/css"> @import url(foo.css) print; </style> 另外对于css来说还有一种方式@media: @media print { @import "print.css" } 用@media先制定设备为 print,然后再用@impor链接
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值