javascript - 使用 CSS 或 Javascript 样式化下拉表单元素(选择)

标签 javascript jquery forms html css

我四处寻找,没有找到任何方法来做我想做的事。我想设计标准表单下拉(选择)元素的顶层样式。

我希望它看起来像这样:
enter image description here

现在我知道我可以使用 CSS 设置边框、文本和渐变的样式,但我想知道将下拉菜单设为静态图像是否更容易?

或者甚至可以用这种方式设置下拉菜单的样式吗?我从来没有这样做过。

编辑:我找到了 this tutorial HERE那非常接近。但就是想看看别人的意见。

提前致谢!

最佳答案

在这里找到我的答案,这正是我想要完成的,它只使用 CSS,这是一个奖励:
http://danielneumann.com/blog/how-to-style-dropdown-with-css-only/

select { 
font-size:1.1em; 
text-transform: uppercase;
font-weight: 200;
width:195px;
border:0; 
border-radius: 0px;
color:#787878; 
background:transparent;
padding-top: 7px; 
padding-bottom: 10px; 
-webkit-appearance: none;
*width:190px; 
*background:#58B14C;
}

#mainselection  { 
color: #787878 !important;
width: 197px;
background: url("http://i.imgur.com/N6SyH.png") no-repeat scroll 165px 8px, #f5f5f5; /* Old browsers */
/* IE9 SVG, needs conditional override of 'filter' to 'none' */
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y1ZjVmNSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjQwJSIgc3RvcC1jb2xvcj0iI2VmZWZlZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlOGU4ZTgiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: url('http://i.imgur.com/N6SyH.png') no-repeat scroll 169px 8px, -moz-linear-gradient(top, #f5f5f5 0%, #efefef 40%, #e8e8e8 100%); /* FF3.6+ */
background: url('http://i.imgur.com/N6SyH.png') no-repeat scroll 169px 8px, -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f5f5f5), color-stop(40%,#efefef), color-stop(100%,#e8e8e8)); /* Chrome,Safari4+ */
background: url('http://i.imgur.com/N6SyH.png') no-repeat scroll 169px 8px, -webkit-linear-gradient(top, #f5f5f5 0%,#efefef 40%,#e8e8e8 100%); /* Chrome10+,Safari5.1+ */
background: url('http://i.imgur.com/N6SyH.png') no-repeat scroll 169px 8px, -o-linear-gradient(top, #f5f5f5 0%,#efefef 40%,#e8e8e8 100%); /* Opera 11.10+ */
background: url('http://i.imgur.com/N6SyH.png') no-repeat scroll 169px 8px, -ms-linear-gradient(top, #f5f5f5 0%,#efefef 40%,#e8e8e8 100%); /* IE10+ */
background: url('http://i.imgur.com/N6SyH.png') no-repeat scroll 169px 8px, linear-gradient(to bottom, #f5f5f5 0%,#efefef 40%,#e8e8e8 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f5f5f5', endColorstr='#e8e8e8',GradientType=0 ); /* IE6-8 */
border: solid 1px #D1D1D1;
-webkit-box-shadow: inset 0px 1px 0px 0px #FFF;
-moz-box-shadow: inset 0px 1px 0px 0px #FFF;
box-shadow: inset 0px 1px 0px 0px #FFF;
}

Here is a live jsfiddle of it .

谢谢!

关于javascript - 使用 CSS 或 Javascript 样式化下拉表单元素(选择),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13168588/

相关文章:

javascript - 验证测验的单选按钮

javascript - 如何使用其 ID 在 jquery/javascript 中选择动态生成的表单元素?

javascript - 如何在将两个元素解析为 JSON 之前合并它们

forms - Shopify 表单发布到外部 url

javascript - 管理页面在 orgfree 中不起作用 用户 'root' @'localhost' 的访问被拒绝?

javascript - 在 React 中将 Props 传递给父组件

jquery - TinyMCE:仅在整个编辑器外部单击时触发事件

javascript - 如何使用 JQuery 使用 HTTP "PUT"上传文件?

javascript - 如何将按钮的 php 变量 onclick 作为参数发送给 javascript 函数

javascript - 运行 Grunt 时将依赖项(如 jQuery)注入(inject)库