javascript - 在伪元素上触发选择下拉菜单

标签 javascript jquery html css

点击 :after (箭头)时有没有办法触发下拉列表(选择选项)?也许我的代码更适合这个设计,但这是我最终想出的唯一可行的解​​决方案。

enter image description here

HTML

<label>
    <select>
        <option selected>jkjhhkl</option>
        <option>asdfasd</option>
        <option>dfgdfgfd</option>
    </select>
</label>

CSS

select {
    height: 40px;
    background-color: #666;
    color: #f6f6f6;
    font: 400 13px "Open Sans",Arial,"Helvetica Neue",Helvetica,sans-serif;
    padding: 6px 20px;
    overflow: hidden;
    border: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

label {
    position: relative;
    height: 40px;
}

label:after {
    content: '\f107';
    font: 22px "FontAwesome";
    color: #f6f6f6;
    background-color: #333;
    padding: 10px 10px;
}

https://jsfiddle.net/sworj0ta/1/

最佳答案

我想这就是您要找的:https://jsfiddle.net/2232xzy8/1/

我将选择框放在 labellabel:before 上方,并将背景颜色仅移动到 label 元素,同时保持 选择的背景透明。

因此看起来您点击的是箭头,但实际上您点击的是选择框。

关于javascript - 在伪元素上触发选择下拉菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36788558/

相关文章:

javascript - 在引用原始父元素的同时将子元素附加到另一个 div

javascript - 转换为友好名称的数据结构该如何命名?

javascript - 我可以依靠 `<tbody>` 标记的隐式创建吗?

javascript - 如何检查是否已经有与元素关联的点击/事件

javascript - 我应如何验证最小选中复选框?

javascript - WebStorm:如何生成 JSDoc 文档

javascript - 保存对 html Canvas 路径的引用

javascript - Angular 有条件地启用/禁用 HTML 选择

JS 文件中的 Javascript 函数不会从 Canvas 中调用

html - 需要使用:fixed but still need element in flow.位置怎么办?