如何創建:上拉菜單

學習如何使用 CSS 創建上拉菜單。

上拉菜單

上拉菜單是一種可切換的菜單,允許用戶從預定義列表中選擇一個值:

親自試一試

創建可懸停的上拉菜單

創建一個上拉菜單,當用戶將鼠標移動到元素上時顯示該菜單。

第一步 - 添加 HTML:

<div class="dropup">
  <button class="dropbtn">Dropup</button>
  <div class="dropup-content">
    <a href="#">Link 1</a>
    <a href="#">Link 2</a>
    <a href="#">Link 3</a>
  </div>
</div>

例子解釋:

可以使用任何元素來打開上拉菜單,例如 <button>、<a> 或 <p> 元素。

使用容器元素(如 <div>)來創建上拉菜單,并在其中添加上拉鏈接。

使用 <div> 元素將按鈕和 <div> 包裹起來,以便使用 CSS 正確定位上拉菜單。

第二步 - 添加 CSS:

/* 下拉按鈕 */
.dropbtn {
  background-color: #3498DB;
  color: white;
  padding: 16px;
  font-size: 16px;
  border: none;
}
/* 容器 <div> - 用于定位上拉菜單內容所需的元素 */
.dropup {
  position: relative;
  display: inline-block;
}
/* 上拉菜單內容(默認隱藏) */
.dropup-content {
  display: none;
  position: absolute;
  bottom: 50px;
  background-color: #f1f1f1;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
  z-index: 1;
}
/* 下拉菜單中的鏈接 */
.dropup-content a {
  color: black;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
}
/* 更改鼠標懸停時下拉鏈接的顏色 */
.dropup-content a:hover {background-color: #ddd}
/* 鼠標懸停時顯示上拉菜單 */
.dropup:hover .dropup-content {
  display: block;
}
/* 當上拉菜單內容顯示時,更改上拉按鈕的背景色 */
.dropup:hover .dropbtn {
  background-color: #2980B9;
}

親自試一試

例子解釋:

我們為上拉按鈕設置了背景色、內邊距等樣式。

.dropup 類使用 position:relative,當我們想要將上拉菜單內容放置在上拉按鈕的頂部時(使用 position:absolute),這是必需的。

.dropup-content 類包含實際的上拉菜單。它默認是隱藏的,并將在鼠標懸停時顯示(見下文)。請注意,最小寬度設置為 160px。您可以根據需要更改這個值。提示:如果您希望上拉菜單內容的寬度與上拉按鈕一樣寬,可以將寬度設置為 100%(并在小屏幕上使用 overflow:auto 以啟用滾動)。

我們沒有使用邊框,而是使用了 box-shadow 屬性,使上拉菜單看起來像一張“卡片”。我們還使用 z-index 將上拉菜單放置在其他元素的前面。

:hover 選擇器用于在用戶將鼠標懸停在上拉按鈕上時顯示上拉菜單。