html - 如何将多个供应商前缀添加到一个 CSS 属性?

标签 html css twitter-bootstrap vendor-prefix

我在 .img-container 中有一个图像。我希望图像在容器内居中。

        <div class='col-xs-12 col-sm-4 col-lg-4 img-container'>
             <img class="img-responsive img-about" src='img/About5001000.jpg'> 
        </div>

如何编写处理不同浏览器的 CSS?我知道的唯一方法是分别对它们进行编码(-moz-center、-webkit-center):

.img-container {
    padding-right: 0px;
    padding-left: 0px;
    text-align: -moz-center;
}

.img-container {
    padding-right: 0px;
    padding-left: 0px;
    text-align: -webkit-center;
}

这不适用于 Firefox、Safari 或 Chrome:

.img-container {
  padding-right: 0px; 
  padding-left: 0px;
  text-align: center;
}

是否有通用的解决方案?

最佳答案

浏览器前缀用于尚未准备好用于一般用途或基于尚未最终确定的 CSS 规范部分的实验性功能。

要执行您要求的操作,您将逐个列出每个供应商前缀,最后列出未加前缀的版本。如果 text-align 需要供应商前缀,您可以这样写:

.img-container {
    text-align: -moz-center;
    text-align: -webkit-center;
    text-align: -o-center;
    text-align: center;
}

但是,text-align: center 自 CSS 出现以来就已经存在,因此从来不需要前缀。所以你实际上会这样写:

.img-container {
    padding-right: 0px;
    padding-left: 0px;
    text-align: center;
}

这对您的图像不起作用的原因是 img-responsive 类。在 Bootstrap 中,这使您的图像成为 block 元素。 block 元素不能与 text-align 对齐。

Bootstrap 3 有一个内置的 center-block 类,应该添加到 img 标签中...

<div class='col-xs-12 col-sm-4 col-lg-4 img-container'>
    <img class="img-responsive img-about center-block" src='img/About5001000.jpg'> 
</div>

Bootply example

关于html - 如何将多个供应商前缀添加到一个 CSS 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29084891/

相关文章:

html - Z-Index 现在允许链接

javascript - JQuery 函数不会在页面加载时触发它仅在我刷新页面或再次重新访问同一页面后才起作用

html - 选中时的空字符串复选框值

html - 按钮对齐中断

css - 复杂元素结构上的 Compass 和 SASS

html - 为什么 JSPX 不喜欢空元素?

javascript - 链接到水平网页上的某个部分

javascript - 完整日历描述中的新行

css - 如何制作固定大小的div而不考虑内容

css - 在响应式设计中如何将多个子元素锚定到父元素的底部?