html - 如何制作:after work in chrome and IE?

标签 html css

我的代码只适用于 Firefox 而不是所有浏览器,尽管 :after 也适用于其他浏览器。

HTML:

<select>
    <option> select </option>
    <option class="red"> one </option>
    <option class="green"> two </option>
    <option class="blue"> three </option>
</select>​

CSS:

option:after {
    content: " ";
    height: 5px;
    width: 5px;
    border-radius: 5px;
    display: inline-block;
}

option.red:after { background: #c00; }
option.green:after { background: #0c0; }
option.blue:after { background: #00c; }

JS fiddle :http://jsfiddle.net/abude/EAdvP/

最佳答案

抱歉,大多数浏览器并没有为您提供许多样式化 selectoption 元素的 CSS 可能性。 Firefox 在这件事上相当宽容 - 其他人则不然。

我必须告诉您,以目前的形式,您的代码无法跨浏览器运行。您仍然可以选择(通过使用 Javascript)用一些可设置样式的元素替换 select 元素,并使它们像下拉框一样工作。有许多图书馆可以做到这一点。

关于html - 如何制作:after work in chrome and IE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11891778/

相关文章:

javascript - Yeoman Angular 生成器中的 URL 错误

javascript - 如何在 HTML 中格式化 JSON 键值

c# - MyAnimeList REST API 限制

JavaScript - OffFocus 事件?

javascript - 选择选项后锁定选择框?

html - 如何用 css 停止 svg 动画?

html - 如何将内联阻塞的 div 居中

html - 使按钮与 Firefox 中的文本输入字段宽度相同

html - 具有相对位置的重叠 div 会导致空白

html - 在 React-Toolbox 中构建 AppBar