我正在为我的大学作业创建一个新网站,但我的 @media屏幕和(最大宽度:720px) 当我按如下所示输入代码时,没有任何变化。我想做的是,要使我的导航链接隐藏在汉堡下,以便在移动设备上显示(一旦运行,它将包括javascript)
我尝试过
@media screen and (max-width:1280px){
#topnav {
width:100%;
background:#000000;
}
#brand {
width:15%;
display: inline-block;
}
#brand h1 {
display: inline-block;
font-family: sans-serif;
color: #fff;
font-size: 30px;
font-style: italic;
word-spacing: 5px;
line-height: 1.5;
margin: 0 0 0 0;
padding-left: 10%;
}
#search,form,button{
display: inline-block;
width: 30%;
height: 44px;
text-align: left;
margin: 0;
margin-left: 20px;
}
.srch_bar {
display:inline-block;
width: 300%;
border-radius: 5px;
height: 30px;
font-size: 20px;
font-weight: 600;
padding: 5px;
}
input {
border: none;
display: inline-block;
}
button {
border: none;
background-color: #fff;
height: 20px;
font-size: 20px;
cursor: pointer;
width: 10px;
padding: 0;
margin-left: 42%;
}
.clr-btn {
color:#636c72;
}
#link {
display: inline-block;
width: 45%;
}
#link a{
text-decoration: none;
font-size:20px;
color: #fff;
padding-left:1%;
padding-right:1%;
}
.szp {
color: #F07330;
font-size: 20px;
}
.szr {
color: #F20000;
font-size: 20px;
}
.szs {
color: #063780;
font-size: 22px;
font-weight: 600;
}
.szu {
color: #1E7305;
font-size: 24px;
}
以及
@media screen and (max-width:1024px){
#topnav {
width:100%;
background:#000000;
}
#brand {
width:17%;
display: inline-block;
}
#brand h1 {
display: inline-block;
font-family: sans-serif;
color: #fff;
font-size: 25px;
font-style: italic;
word-spacing: 5px;
line-height: 1.5;
margin: 0 0 0 0;
padding-left: 10%;
}
#search,form,button{
display: inline-block;
width: 25%;
height: 44px;
text-align: left;
margin: 0;
margin-left: 15px;
}
.srch_bar {
display:inline-block;
width: 330%;
border-radius: 5px;
height: 30px;
font-size: 15px;
font-weight: 600;
padding: 5px;
}
input {
border: none;
display: inline-block;
}
button {
border: none;
background-color: #fff;
height: 20px;
font-size: 20px;
cursor: pointer;
width: 10px;
padding: 0;
margin-left: 42%;
}
.clr-btn {
color:#636c72;
}
#link {
display: inline-block;
width: 53%;
margin: 0;
}
#link a{
text-decoration: none;
font-size:18px;
color: #fff;
}
.szp {
color: #F07330;
font-size: 20px;
}
.szr {
color: #F20000;
font-size: 20px;
}
.szs {
color: #063780;
font-size: 22px;
font-weight: 600;
}
.szu {
color: #1E7305;
font-size: 24px;
}
}
两者都有效,但到了
@media screen and (max-width:768px){
}
似乎我也没有
<meta name="viewport" content="width=device-width, initial-scale=1.0">
以html链接,否则我的@media 1024px和1280px无法正常工作
@media screen and (max-width:720px){
body {
overflow-x: hidden;
}
#links{
position:absolute;
right:0px;
height: 92vh;
top:8vh;
background-color: #000000;
display: flex;
flex-direction: column;
align-items: center;
width: 40%;
transform: translateX(100%);
}
.burger {
display:block;
}
}
我希望它首先不显示在页面上,所以我知道它可以正常工作
顺便说一句,这是我的html
<html>
<head>
<title>Solexton</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet"
href="https://use.fontawesome.com/releases/v5.8.1/css/all.css"
integrity="sha384-
50oBUHEmvpQ+1lW4y57PTFmhCaXp0ML5d60M1M7uH2+nqUivzIebhndOJK28anvf"
crossorigin="anonymous">
<link rel="icon" href="C:\Users\User\Desktop\picas\s.png" type="image/png">
<link rel="stylesheet" href="C:\xampp\htdocs\wdt\asg\css\style.css" type="text/css">
</head>
<body>
<div id="topnav">
<div id="brand">
<h1 class="logo"><i class="fab fa-stripe-s"></i>olexton</h1>
</div>
<div id="search">
<form action="search.php" method="post">
<input class="srch_bar" type="text" name="search_key"
placeholder="Looking for..."/>
</form>
<button class="srch-btn" name="submit"><i class="fas fa-search clr-
btn"></i></button>
</div>
<div id="link">
<a href="promo.html"><i class="fas fa-percent szp"></i> Promotions</a>
<a href="room.html"><i class="fas fa-bed szr"></i> Rooms</a>
<a href="booking.html"><i class="far fa-bookmark szs"></i> Saved</a>
<a href="signin.php"><i class="far fa-user-circle szu"></i> Sign
In</a>
</div>
<div class="burger">
<div class="line1"></div>
<div class="line2"></div>
<div class="line3"></div>
</div>
</div>
</body>
</html>
答案 0 :(得分:1)
您应该将媒体查询从小屏幕写到大屏幕。因为最后一行CSS代码将覆盖以前的CSS行。 例如来自bootstrap;
// Small devices (landscape phones, 576px and up)
@media screen and (min-width: 576px) { ... }
// Medium devices (tablets, 768px and up)
@media screen and (min-width: 768px) { ... }
// Large devices (desktops, 992px and up)
@media screen and (min-width: 992px) { ... }
// Extra large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { ... }
答案 1 :(得分:0)
检查是否还有其他干扰小屏幕尺寸的媒体查询,可以使用浏览器检查器,将屏幕尺寸缩放到720px以下,从源(元素标签)中选择主体,然后在右侧边栏中检查显示属性已设置。
也许在其他CSS中,将相同的元素作为目标并设置了display属性。
答案 2 :(得分:0)
根据您提供的代码,您的媒体查询正在运行,因为没有内容,您无法分辨。
除非另有指定,否则浏览器将显示默认的白色背景,除非您另外指定,否则根据提供的代码,一旦浏览器将尺寸调整为720px
以上,将无任何显示。
在正文中添加一些内容,然后尝试将浏览器的大小调整为相对的断点,或者尝试添加以下内容以明显看到更改。
@media screen and (max-width:768px){
body {
display: block;
background: #000;
}
}