通过css设置标签的大小属性?

时间:2008-09-23 09:01:07

标签: html css html-select

通常你可以这样做:

<select size="3">
    <option>blah</option>
    <option>blah</option>
    <option>blah</option>
</select>

它将呈现为一个选择框,其中所有三个选项都可见(不会下降)
我正在寻找一种从css设置此大小属性的方法。

7 个答案:

答案 0 :(得分:8)

没有设置大小的选项,但是如果你设置了大小,一些浏览器会让你通过CSS将宽度/高度属性设置为你想要的任何东西。

部分= Firefox,Chrome,Safari,Opera。

虽然在IE中没有多少作用(毫不奇怪)

如果你愿意的话,你可以在IE中使用CSS表达式来检查是否设置了size属性,如果是,则运行JS以(重新)将其设置为你想要的大小...例如

size = options.length;

答案 1 :(得分:6)

我不认为这是可能的。

CSS属性非常通用(适用于任何元素),无法以任何方式改变元素的功能(仅限外观)。

size属性正在改变元素的功能,至少在size = 1 / size!= 1的情况下。

答案 2 :(得分:2)

我不同意,我已经能够使用CSS设置选择宽度和高度,如下所示:

select { width: 5em; height: 5em; }

在IE(7)中工作以及我刚刚测试过它。

答案 3 :(得分:2)

试试这个:

select[attr=size] {
    width:auto;
    height:auto;
}

答案 4 :(得分:0)

通常,您无法通过CSS添加html中设置的属性。您可以使用伪选择器添加到html:before和:after,但这是关于它的,加上它们仍然不兼容所有浏览器。如果你真的需要这样做,我认为你必须使用Javascript。

答案 5 :(得分:0)

您可以使用以下CSS选择器为具有size属性的选项设置样式:

select[size]{
/*your style here */
}

答案 6 :(得分:-2)

我不相信这是不可能的