首頁  >  文章  >  web前端  >  簡單介紹CSS自訂下拉清單樣式的範例程式碼分享

簡單介紹CSS自訂下拉清單樣式的範例程式碼分享

黄舟
黄舟原創
2017-07-26 09:56:113992瀏覽

下拉清單的預設樣式:


##以下介紹自訂下拉清單的兩種方法:

方法一:

#以純CSS自訂下拉清單的樣式。

原理:將預設的下拉清單樣式清除,自訂樣式,並附上一張向右對齊的小箭頭圖片。

<!doctype html>
<html>
	<head>
		<style type="text/css">
			select{
				width:200px;
				height:30px;
				appearance:none;
			    -moz-appearance:none;
			    -webkit-appearance:none;
				background: url("images/select.png") no-repeat right center;
				font-size:16px;
				font-family:Microsoft YaHei;
				color:red;
			}
		</style>
	</head>
	<body>
		<form action="" method="post">
			<select>
				<option value="请选择">请选择</option>
				<option value="北京">北京</option>
				<option value="上海">上海</option>
				<option value="广州">广州</option>
			</select>
		</form>
	</body>
</html>

#問題:修改option的寬與高無效。

方法二:

用p+ul+jQuery實作自訂樣式的下拉清單select。

HTML程式碼:

#
<p id="container">
	<form action="" method="post">
		<p>
			<ul>
				<li class="active">请选择</li>
				<li>北京</li>
				<li>上海</li>
				<li>广州</li>
			</ul>
		</p>
	</form>
</p>
######CSS程式碼:######
#container{
	background:grey;
	width:300px;
	height:200px;
	padding:20px;
}
form p{
    width:236px;
    height:34px;
}
form p{
	font-family:Microsoft YaHei;
    background:#FFFFFF;
}
form p:hover{
    border:1px solid #E74F4D;
}
form ul{
	margin:0;
	padding:0;
}
form ul li:first-child{
    height:34px;
    line-height:34px;
}
form ul li{
    width:236px;
    height:24px;
    line-height:24px;
    font-size:15px;
    color:#323333;
    opacity:0.7;
    background:#e3e3e5;
    text-indent:12px;
	display:none;
}
form ul li.active{
    display:block;
    background:url("images/arrows_active_down.gif") no-repeat scroll right center;
    opacity:1;
}
form ul li:not(.active):hover{
    background:#E74F4D;
    color:white;
}
### ###jQuery程式碼:######
$(document).ready(function(){
    var p = $("form").find("p");
    p.mouseover(function(e) {
        var event = e || window.event;
        var target = event.target || event.srcElement;
        var _this = $(this);
        if(target.nodeName.toLowerCase() == &#39;li&#39;) {
            _this.find(&#39;li&#39;).css(&#39;display&#39;, &#39;block&#39;);
            _this.find(&#39;li&#39;).click(function(){
                var li = $(this);
                _this.find(&#39;.active&#39;).text(li.text());
            });
        }
        _this.mouseout(function(e) {
            var event = e || window.event;
            var target = event.target || event.srcElement;
            if(target.nodeName.toLowerCase() == &#39;li&#39;)
				_this.find(&#39;li&#39;).not(&#39;.active&#39;).css(&#39;display&#39;,&#39;none&#39;);
        });
    });
});

以上是簡單介紹CSS自訂下拉清單樣式的範例程式碼分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn