通过CSS设置标签的size属性?

时间:2020-03-06 14:35:18  来源:igfitidea点击:

通常,我们可以执行以下操作:

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

它将呈现为一个选择框,其中所有三个选项均可见(不下拉)
我正在寻找一种从CSS设置此size属性的方法。

解决方案

我不相信这是不可能的

我认为这是不可能的。

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

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

通常,我们无法通过CSS在html中添加设置的属性。我们可以使用伪选择器:before和:after将它们添加到html中,但是仅此而已,而且它们仍然不能在所有浏览器中兼容。如果我们确实需要执行此操作,那么我认为我们必须使用Javascript。

没有设置大小的选项,但是如果我们设置大小,则某些浏览器将允许我们通过CSS将width / height属性设置为所需的值。

一些= Firefox,Chrome,Safari,Opera。

虽然在IE中工作不多(不足为奇)

不过,我们可以在IE中使用CSS表达式来检查是否设置了size属性,如果是,请运行JS将其(重新)设置为所需的大小。

size = options.length;

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

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

可以在IE(7)中运行,也可以测试。