CSS:是否可以创建一个只覆盖给定媒体查询中的属性的类?

标签 css responsive-design media-queries

这是我的课:

.center-block-xs {
  // This style is given to an image. I want the image to keep
  // its original CSS (whatever the default display and margin
  // is for an image) unless the screen size fits within the 
  // media query below.
}

@media(max-width:767px) {
  .center-block-xs { 
    display: block; 
    margin-right: auto; 
    margin-left: auto; 
  }
}

基本上,我想做的是:如果一个元素有 .center-block-xs 类,那么只有当屏幕尺寸在媒体查询。我知道我可以做到这一点:

@media(max-width:767px) {
  .color-red-xs { color: red; }
}

@media(min-width:768px){
  .color-red-xs { color: black; }
}

在这种情况下,仅当屏幕尺寸在媒体查询范围内时颜色为红色,否则它会被黑色覆盖。但我不想在我的情况下覆盖任何 CSS;我只希望 CSS 保持正常状态,除非屏幕尺寸在媒体查询范围内。这可能吗?

最佳答案

您所描述的正是 CSS 和媒体查询在默认情况下的工作方式。如果您在媒体查询中定义了 .center-block-xs 类,则该定义将仅应用于 a) 具有该类的元素,当 b) 媒体查询规则适用时。如果您希望应用继承的样式,则无需显式定义替代案例。

关于CSS:是否可以创建一个只覆盖给定媒体查询中的属性的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30689965/

相关文章:

javascript - 如何使用 javascript/jquery 按数组顺序更改网站背景?

jquery - 使用 jquery 在响应式布局中显示当前行 div 下方隐藏的 div

CSS采用绝对定位子的高度

html - Chrome 在屏幕模式下加载我的打印样式表,这是一个错误吗?

jquery - 修复 XL 屏幕上的 Bootstrap 4 多项目轮播

html - 如何制作 100% 宽度和内部边框的 HTML 表格?

jquery - 停止元素滚动超过 jQuery 中的某个点

html - Div 中 IE 7、8、9 中的垂直间距

媒体查询中的 CSS3 转换?

ios - 横向 View 的媒体查询