2 回答

TA貢獻1775條經驗 獲得超11個贊
要設置媒體查詢,您可以使用
@media (//media size in here) {
// css for that media query in here
}
一個真實的例子是,例如
@media (max-width: 990px) {
.menu {
display: none;
}
}
通過執行以下步驟可以實現基本的漢堡菜單:
1) 使用 burger-menu 類創建一個作為要在移動屏幕寬度上隱藏的導航的前一個兄弟元素。a)您不希望它顯示在您的桌面媒體上,因此在 css 中,將其設置為 display: none;
2) 為所需設備創建媒體查詢。假設移動設備為 480 像素。
3)在此媒體查詢中,將您希望在懸停(或單擊)時顯示的導航設置為 display: none;
4) 在此媒體查詢中,為您的漢堡菜單設置樣式。在我的示例中,出于時間原因,我設置了一些非?;镜臉邮剑梢匝芯渴褂?span 來制作響應式漢堡菜單。
5)在這個媒體查詢中,為你的漢堡菜單聲明一個懸停偽類,它可以訪問隱藏的導航。由于您將 burger-menu 作為導航的前一個兄弟元素放置,因此您可以使用 + css 規則來定位它
.burger-menu:hover + .menu {
}
這意味著,當您將鼠標懸停在漢堡菜單上時,您將影響 .menu 的 css。您可以在上面的 CSS 選擇器中放置 .menu 的樣式將如何受到影響。
這是此過程如何與您的代碼一起使用的基本示例。
將此添加到您的 .menu 之前的 html
<div class="menu">
將此添加到您的 css 文件中,在底部
.burger-menu {
display: none;
}
@media (max-width: 480px) {
.menu {
display: none;
}
.burger-menu {
display: block;
background-color: white;
height: 30px;
width: 30px;
position: fixed;
top: 10px;
right: 10px;
}
.burger-menu:hover + .menu {
display: block;
}
}
通常,您可以通過使用帶有 JQuery 的 toggleClass 在單擊漢堡菜單時向導航菜單添加和刪除顯示來推進這一點。
Ps 使用跨度創建漢堡菜單的好處是當你希望它有漂亮的動畫時,從漢堡菜單變為十字或箭頭等。

TA貢獻1842條經驗 獲得超13個贊
(對不起我的英語不好,我也知道這個回復有點晚了,但我希望它有幫助)你可以有一個用于 PC 的 CSS 文件(在我的示例中稱為 pc.css),它隱藏了用于移動設備的菜單display: none;和另一個它做同樣的事情,但隱藏了用于 PC 的那個(在我的示例中稱為 mobile.css)。這可以通過以下 JS 來完成,該 JS 檢查您的屏幕寬度是否小于或等于 699px,然后將 CSS 文件 pc.css 更改為 mobile.css
if (screen.width <= 699) {
// get all links in the head (including CSS)
var allLinks = document.head.getElementsByTagName('link');
// find and replace the element
for (var i = 0; i < allLinks.length; i++) {
if (allLinks[i].href = "pc.css") {
allLinks[i].href = "mobile.css";
}
添加回答
舉報