色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

如何用css模擬下拉框

錢艷冰2年前9瀏覽0評論

CSS模擬下拉框是前端開發中常用的技巧,可以讓網站的用戶體驗更加友好,本文將介紹使用CSS模擬下拉框的步驟。

<div class="select">
<div class="select__selected">
請選擇
<i class="fa fa-angle-down"></i>
</div>
<ul class="select__options">
<li>選項1</li>
<li>選項2</li>
<li>選項3</li>
<li>選項4</li>
</ul>
</div>

首先,我們需要一個基本的HTML結構,包括一個外層的div和兩個子元素,一個是選擇框,一個是下拉框。

選中的選項會顯示在選擇框中,以“請選擇”為默認文本,點擊選擇框會展開下拉框。我們使用CSS通過設置偽類和子元素來完成這個交互效果。

.select {
position: relative;
width: 200px;
height: 40px;
background-color: #f4f4f4;
border-radius: 4px;
}
.select__selected {
position: relative;
z-index: 1;
height: 100%;
line-height: 40px;
padding: 0 20px;
}
.select__selected i {
position: absolute;
top: 50%;
right: 10px;
transform: translateY(-50%);
}
.select__options {
position: absolute;
top: 100%;
left: -1px;
right: -1px;
z-index: 2;
max-height: 160px;
overflow-y: scroll;
margin: 0;
padding: 0;
list-style: none;
background-color: #fff;
border-radius: 4px;
box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
transform: scaleY(0);
transform-origin: top center;
transition: transform 0.3s ease-out;
}
.select__options li {
height: 40px;
line-height: 40px;
padding: 0 20px;
cursor: pointer;
transition: background-color 0.3s ease-out;
}
.select__options li:hover {
background-color: #f5f5f5;
}
.select__options.show {
transform: scaleY(1);
}

以上是基本的CSS樣式代碼,需要注意的是,下拉框默認是隱藏的,當點擊選擇框后,添加.show類名來展示下拉框,上下滑動時需要使用overflow-y和max-height。

最后,我們需要使用JavaScript來添加事件監聽,點擊選擇框時,在選擇框上添加.show類名,此外,當點擊下拉框的選項時,更新選擇框的文本內容并隱藏下拉框。

var select = document.querySelector('.select');
var selected = document.querySelector('.select__selected');
var options = document.querySelector('.select__options');
selected.addEventListener('click', function() {
options.classList.toggle('show');
});
options.addEventListener('click', function(e) {
if (e.target.tagName === 'LI') {
selected.textContent = e.target.textContent;
options.classList.remove('show');
}
});

到這里,模擬下拉框的代碼就完成了,通過CSS和JavaScript的配合,實現了一個基本的下拉框。當然,如果我們需要更加復雜的樣式和交互效果,也可以根據需求進行代碼的調整。