仅使用CSS / CSS3设计<select>菜单的样式
我想知道为什么我们不能选择一个选择
HTML 4.01(或者它是CSS 2.1?)让用户代理以他们想要的方式设计表单元素。 所以几乎没有标准化,并且当你在WebKit的bugzilla(主要)中提交了一个bug时,答案就像是“告诉我在我的渲染引擎中buggily实现了哪部分建议,没有?OK WONTFIX KTHXBYE”。
公平地说,三家供应商有3个操作系统和3个用户界面需要考虑,苹果有2个,现在1个,第5个有更重要的问题需要解决。
以下是2007年最先进的技术:重新设计CSS样式表单控件(R. Johansson)。 至于WebKit可能会让我烦恼,我不会后悔的! (除了Safari 2:“我们什么都不能做”是一个客户容易理解的答案,比“是的,但不是所有的东西......这个和那个等等”更容易理解)
所以在WebKit afaik中没有填充,如果你真的真的需要一个非常自定义的外观,比起定制列表和WAI ARIA来模仿本地元素。
编辑:这篇文章是一个非常好的总结: CSS表单元素的问题 (粉碎杂志,Gabriele Romanato)
MDN文章似乎过时了。 我将不得不做更多的测试,但传说可以在IE8 +中浮动。 但是,IE7和IE6所写的内容是真实的。 绝对定位(和已知宽度)是将其定位在这些浏览器中的唯一方法。
简而言之,你不会找到一个跨浏览器的纯CSS方法,因为它不存在。
一个不存在的原因,以及为什么选择控件与其他HTML元素不同,是因为它们(和其他表单控件)是OS级别的元素。 也就是说,浏览器将其留给操作系统来确定元素的样式。 部分原因是因为每个操作系统都有自己的表单样式,标准组选择在平台上保持一致(使用户可以将其作为表单识别)。 因此,如果有的话,控件将会真正关注的CSS几乎没有,更不用说实际上跨浏览器的任何东西了。
换句话说,如果您想要的基本文本大小和颜色,边距或填充几乎都是任何形式的输入元素,那么您就会陷入您找到的JavaScript方法。
<style name='abc'>
<option name='a' style='color: red; background-color: #fff;'>Hello</option>
</style>
通过这种方式,您可以为样式标记添加更多样式属性。
链接地址: http://www.djcxy.com/p/41597.html