使用Ryan Fait的jQuery样式脚本</select>的多个大小的<select>元素

时间:2012-05-14 21:03:04

标签: jquery css select input

我是java的新手,可以自己做几乎零。我想知道如何修改Ryan Fait的输入样式jQuery,以便允许2种不同类型的元素。这是他非常有用的代码的链接:

http://ryanfait.com/resources/custom-checkboxes-and-radio-buttons/

基本上它的工作非常顺利,但我无法弄清楚如何做一个菜单的2种不同尺寸(一个大,一个小,因此也有不同的背景图像)。提前谢谢!

1 个答案:

答案 0 :(得分:0)

你遇到的问题是元素的大小在源代码中是硬编码的,这是代码编写方式的一个不幸的副作用。虽然您可以对源代码进行大量更改以使其接受多种样式,但您最好只使用CSS 和一些额外的HTML。

如果您的HTML看起来像这样:

<label for="first">Specially styled select box</label>
<div class="styled-select">
    <select name="first">
        <option>Here is the first option</option>
        <option>The second option</option>
    </select>
</div>

<label for="first">Specially styled select box, with massive text</label>
<div class="styled-select">
    <select name="second" class="massive">
        <option>Here is the first option</option>
        <option>The second option</option>
    </select>
</div>
​

您的样式表可能如下所示:

.styled-select {
    width: 240px;
    height: 34px;
    overflow: hidden;
    background: url(http://cdn.bavotasan.com/wp-content/uploads/2011/05/down_arrow_select.jpg) no-repeat right #DDD;
}
.styled-select select {
    background: transparent;
    width: 268px;
    padding: 5px;
    border: 1px solid #CCC;
    font-size: 16px;
    height: 34px;
    -webkit-appearance: none;
    -webkit-border-radius: 3px;
    border-radius: 3px;
}

select.massive {
    font-size: 24px;
    padding-top: 1px;
    padding-right: 55px;
    padding-bottom: 0;
}

使用this jsfiddle查看此内容。

(资料来源:bavotsan.com