问题
否,无法以这种方式使用媒体查询
<span style="@media (...) { ... }"></span>
解
但是,如果您想提供可即时使用style
且响应迅速的特定行为,则可以使用标记而不是属性。
ei
<style scoped>
.on-the-fly-behavior {
background-image: url('particular_ad.png');
}
@media (max-width: 300px) {
.on-the-fly-behavior {
background-image: url('particular_ad_small.png');
}
}
</style>
<span class="on-the-fly-behavior"></span>
在CodePen上实时查看工作代码
在我的博客例如,我注入<style>
的标记<head>
刚过<link>
CSS声明,它包含文本区域的内容,该文本区域的内容是在实际内容文本区域的旁边提供的,以便在我编写标题时即时创建额外的类。
注意:该scoped
属性是HTML5规范的一部分。如果您不使用它,验证器将责备您,但浏览器当前不支持其真正目的:<style>
仅将内容的范围限定在直接父元素和该子元素上。如果<style>
元素在<head>
标记中,则作用域不是必需的。
更新:我建议始终以移动优先方式使用规则,因此先前的代码应为:
<style scoped>
/* 0 to 299 */
.on-the-fly-behavior {
background-image: url('particular_ad_small.png');
}
/* 300 to X */
@media (min-width: 300px) { /* or 301 if you want really the same as previously. */
.on-the-fly-behavior {
background-image: url('particular_ad.png');
}
}
</style>
<span class="on-the-fly-behavior"></span>