【发布时间】:2014-12-04 11:58:08
【问题描述】:
我正在决定哪种方法是最好的方法。假设我有一个要附加到多个页面的背景图像(每个页面都有不同的背景图像)。页面本身将是响应式的。如果我做这样的事情会更好吗(内联css):-
<div class="hero" style="background: url('../images/pagebg.jpg') no-repeat 50% 50% / cover;"></div>
或者我有一个外部 css 并执行以下操作:-
.hero {
height: 100%;
width: 100%;
position: relative;
top: 0px;
left: 0px;
display: block;
}
.hero-page1bg {
background: url('../images/pg1.jpg') no-repeat 50% 50% ;
background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
-webkit-background-size: cover;
}
在我的 html 页面中我放了这个
<div class="hero .hero-page1bg"></div>
我更倾向于第二种方法,因为与第一种方法(内联 CSS)相比,它让我可以灵活地使用媒体查询并为不同的设备分配更小的文件大小。但是我见过很多响应式网站使用第一种方法(内联 css)并为所有设备调用相同的背景文件(基于文件夹结构和文件名),从而迫使这些移动设备下载大文件。
如果您必须通过 CMS 管理网站,则内联 css 看起来是一种合乎逻辑的方法,因为执行内联 css 似乎比让客户端更改 CSS 文件更容易。
什么是正确的方法?内联还是外联?有无CMS?你会走哪条路?
提前谢谢你。干杯
【问题讨论】:
-
减小文件大小并创建更清晰的 html 文档。您不必在每个页面上都编写相同的样式,这非常方便。如果您在外部 css 文件中更改它,所有 html 文档也会更改。
-
感谢 Rafael,我确实了解内联与外联的好处。我只是想了解为什么这么多数字代理公司网站在他们的响应式网站上使用内联 css。有什么原因而我错过了吗?
-
让我给你世界上最好的提示。不要将自己与任何工作的人进行比较。你是在为自己设定限制。如果您已经知道这些好处……请在心里知道并按照您的方式进行编程。这就是让你比其他人更好的原因。明白这一点,那里有很多糟糕的程序员......即使他们为“设计公司”工作。取最好的,留下其余的......
-
你知道一些 Rafael,我有点同意你的观点。