这两天刚写完XHTML加载CSS的几种方式
,其中外部引用CSS
分为两种方式link
和@import
。
本质上,这两种方式都是为了加载CSS文件,但还是存在着细微的差别。
差别1:
老祖宗的差别。link属于XHTML标签,而@import完全是CSS提供的一种方式。
link标签
除了可以加载CSS外,还可以做很多其它的事情,比如定义RSS,定义rel连接属性
等,@import就只能加载CSS了。
差别2:
加载顺序的差别。当一个页面被加载的时候(就是被浏览者浏览的时候),link引用的CSS会同时被加
载,而@import引用的CSS会等到页面全部被下载完再被加载。所以有时候浏览@import加载CSS的页面时开始会没有样式(就是闪烁),网速慢
的时候还挺明显(梦之都加载CSS的方式就是使用@import,我一边下载一边浏览梦之都网页时,就会出现上述问题)。
差别3:
兼容性的差别。由于@import是CSS2.1
提出的所以老的浏览器不支持,@import只有在IE5以上的才能识别,而link标签无此问题。
差别4:
使用dom控制样式时的差别。当使用javascript控制dom去改变样式的时候,只能使用link标签,因为@import不是dom可以控制的。
大致就这几种差别了(如果还有什么差别,大家告诉我,我再补充上去),其它的都一样,从上面的分析来看,还是使用link标签比较好。
标准网页制作加载CSS文件时,还应该选定要加载的媒体(media),比如screen,print,或者全部all等。这个我到CSS高级教程中再给大家介绍。
注:
1,网友comehope在留言中提出了另一种区别。
差别5:
@import可以在css中再次引入其他样式表,比如可以创建一个主样式表,在主样式表中再引入其他的样式表,如:
main.css
———————-
@import “sub1.css”;
@import “sub2.css”;
sub1.css
———————-
p {color:red;}
sub2.css
———————-
.myclass {color:blue}
这样更利于修改和扩展.
猴子提示:这样做有一个缺点,会对网站服务器产生过多的HTTP请求,以前是一个文件,而现在却是两个或更多文件
了,服务器的压力增大,浏览量大的网站还是谨慎使用。有兴趣的可以观察一下像新浪等网站的首页或栏目首页代码,他们总会把css或js直接写在html
里,而不用外部文件。
分享到:
相关推荐
在现代Web开发中,动态加载CSS(层叠样式表)是一种常见的优化策略,它能够提高网页的性能,减少页面初始化时的负担。浏览器判断则是一个关键的辅助技术,用于确保我们的代码能够在不同的浏览器环境中正常运行。这...
当项目js(css)文件使用越来越多,js 文件的加载也成了性能上的一个问题,此资源能够在页面全部加载完成后异步加载js等资源文件,它可以顺序加载资源列表,也可以并发加载资源列表,它包含一个方法调用接口:...
前一段时间公司要求为了方便代码管理与整洁降低多余代码下达了一个需求:那就是统一加载css与js,可直接运行
当我们谈论“CSS加载动画特效”时,我们指的是利用CSS来实现页面元素加载过程中的动态视觉效果。这些效果通常是为了提供用户反馈,告知他们页面正在加载或等待内容呈现。加载动画可以提升用户体验,特别是在处理大量...
"谷歌Loading图标加载CSS3特效"就是这样一个专为优化网页加载体验而设计的资源。这个特效利用了CSS3的强大功能,以纯代码方式绘制出扁平化的谷歌风格加载动画,无需依赖JavaScript库或其他额外的图片资源。 CSS3是...
下面我们将深入探讨如何在Android的WebView中加载和使用JS、CSS以及它们带来的优势。 1. Android WebView加载HTML Android的WebView可以通过调用`loadData()`或`loadDataWithBaseURL()`方法加载HTML字符串,或者...
"Flex动态加载CSS实例"就是一个这样的实践,它旨在解决在运行时按需加载CSS的问题,从而提高页面加载速度并降低初始加载时的带宽消耗。 Flex在这里可能指的是使用Flex布局(Flexible Box Layout),这是一种现代的...
【纯CSS3音阶波浪加载动画特效】是一种利用现代浏览器对CSS3特性的支持,创建出具有音乐旋律感和动态视觉效果的加载指示器。这个加载动画通过纯CSS3技术,无需JavaScript或其他编程语言,就能实现优雅且引人入胜的...
在这些加载CSS文件中,开发者可能会定义旋转的圆圈、滑动的条形、闪烁的文字等各种动画效果。通过使用CSS3的动画属性,如`@keyframes`,可以创建出平滑的过渡效果。例如,`animation`属性可以设置动画的名称、持续...
在网页设计中,用户体验是至关重要的,而加载中特效(Loader Animations)是提升用户体验的一种巧妙方式。"非常好看的CSS加载中特效,引用css文件既可用"这个标题暗示了一个简单的解决方案,即通过引入一个CSS文件,...
【CSS3齿轮Loading加载动画】是一种使用CSS3技术实现的动态加载效果,它通常用于网站或应用程序中,向用户展示数据正在加载的过程。这个加载动画以其独特的齿轮形状,展现出一种机械设备工作的视觉意象,给用户带来...
3. 对于CSS延迟加载,可能提供了动态插入`<link>`标签或使用数据属性标记待延迟加载的CSS,并在适当的时间触发加载。 4. 可能还包含了一些回调函数或事件监听器,以便在资源加载完成后执行特定的操作。 总的来说,...
在IT行业中,尤其是在Web开发领域,兼容性问题一直是一大挑战。Internet Explorer(IE)作为曾经的主流...提供的压缩包文件“本地ie9+10加载css样式”应该包含了一个示例,你可以参考这个例子来实践上述解决方案。
例如,一个简单的圆形旋转加载动画可以通过以下方式定义: ```css @keyframes rotating { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } ``` 接下来,我们需要一个HTML元素来承载...
JavaScript提供了一种方式,让我们能够在运行时根据需要异步加载CSS文件。以下将详细解释如何使用JavaScript实现动态加载CSS,并探讨其应用场景和优化策略。 首先,我们来看一个简单的JavaScript函数,用于动态添加...
资源名称:根据不同浏览器加载不同css文件资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
本项目“css3漏斗型Loading加载动画”就是利用这些特性制作出的一种视觉效果独特的加载动画。 首先,我们要理解“漏斗型Loading加载动画”的概念。在网页或应用加载数据时,为了提供更好的用户体验,通常会显示一个...
**CSS3库与三圆点加载动画** 在现代网页设计中,用户界面的交互性和视觉体验至关重要,其中加载动画就是提升用户体验的一种手段。"三圆点CSS3 loading加载动画特效库",即`three-dots.css`,为开发者提供了一套高效...
本资源"loading页面加载图标css3代码.zip"正是聚焦于这一领域,包含了9种独特的CSS3加载动画特效。 1. **关键帧动画**:CSS3的关键帧动画(@keyframes)允许开发者定义动画的起始和结束状态,以及中间的任意状态。...
在现代网页设计中,CSS3加载动画已经成为提升用户体验的重要元素,它们在页面内容加载时提供视觉反馈,使得用户知道网站正在工作并等待响应。CSS3加载动画利用了CSS3的新特性,如转换(Transitions)、动画...