0

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

我希望它看起来像这样:
在此处输入图像描述

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

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

编辑:我发现这个教程非常接近。不过就是想看看别人的看法。

提前致谢!

4

2 回答 2

0

在这里找到我的答案,这正是我想要完成的,它只使用 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;
}

是一个现场的jsfiddle

谢谢!

于 2012-10-31T23:05:34.763 回答
0

https://github.com/Pryme8/prymeUI

我正在开发一个插件,该插件将允许您对所有元素进行样式设置以匹配您创建的选择框等主题。

它仍处于 alpha 开发阶段,但我会在空闲时间进行开发,一旦我支持至少 80% 的 DOM 元素及其属性,我将开始添加主题,希望通过一次调用 jquery 字符串,您将能够为整个表单或页面设置样式,甚至不必担心 CSS...

于 2014-01-27T17:41:03.483 回答