为了响应我的网站,我正在使用像这样的媒体查询
@media screen and (max-width: 320px){code}
@media screen and (max-width: 480px){code}
@media screen and (max-width: 640px){code}
但是当我尝试测试我的网站时,我遇到了一些问题。一种问题是@media 320px没问题,但是当我将我的网页大小调整为320px到480px或默认为640px时,320px即将到来,而其他两个查询无效。即使我尝试使用最小宽度:320px,但结果是相同的。那我该怎么办? 我的另一个问题是:最大宽度和最小宽度有什么不同?我应该在哪个时使用?
也尝试了这个。 代码:
@media screen and (min-width: 320px){code}
@media screen and (min-width: 480px){code}
@media screen and (min-width: 640px){code}
完整的响应代码,
代码:
/*640px*/
@media screen and (min-width : 640px) {
.colum {
max-width: 960px;
margin: 0 auto;
}
.navbar-header h1 {
margin-left: 20px;
}
.welcome_text h4 {
font-size: 25px;
}
.welcome_text h1 {
font-size: 50px;
letter-spacing: 20px;
}
.promo_title h1, .work_title h1 {
max-width: 640px;
}
.promo_title p, .work_title p{font-size: 18px;
color: #7e8287;
width: 620px;
padding: 0;
}
.promo_list{
margin-bottom: 390px;
}
.fix1{
overflow: hidden;
}
.clear1 {
clear: both;
margin-top: 20px;
}
.extramarg {
margin-top: 30px;
}
.rightborder {
position: absolute;
height: 175px;
border-right: 1px solid #d9dbdb;
right: 313px;
}
.single_list {
border-right: none;
width: 315px;
}
.rightimg {
background: none;
right: 0;
top: 0;
width: 0;
height: 0;
opacity:0;
}
.service_list {
padding: 60px 25px 20px;
text-align: center;
}
.leftarea {
width: 640px;
padding: 0 25px;
}
.service_list h1:before {
left: 36%;
}
.service_item .ss_list {
width: 295px;
padding-left: 0;
padding-bottom: 30px;
text-align: center;
}
.work_title p {
margin: 0;
}
.work_slider {
width: 50%;
}
.slider_detail h3 {
padding-top: 60px;
}
.promo_title h1, .work_title h1 {
font-size: 40px;
}
.msg_area .colum {
width: 640px;
}
.msg_area textarea {
width: 570px;
}
.contact input[type="text"], .contact input[type="email"] {
width: 540px;
}
.submit a {
padding: 10px;
}
.promo_title, .work_title {
padding-top: 60px;
}
}
/*480 */
@media screen and (min-width : 480px) {
.colum {
max-width: 320px;
margin: 0 auto;
}
.navbar-header h1 {
margin-left: 20px;
}
.welcome_text h1 {
font-size: 25px;
margin: 12px 0;
letter-spacing: 12px;
}
.welcome_text h4 {
font-size: 15px;
}
.promo_title h1, .work_title h1 {
max-width: 320px;
}
.promo_title p, .work_title p{
font-size: 12px;
color: #7e8287;
width: 340px;
padding:0;
}
.single_list {
border-bottom: 1px solid #d9dbdb;
border-right: 0;
padding: 20px 0;
width: 320px;
}
.promo_list div:last-child {
border-bottom: 0;
}
.promo_area {
margin-bottom: -230px;
}
.floatleft {
float: none;
}
.leftarea {
width: 320px;
}
.leftarea h1 {
text-align: center
}
.service_list p {
padding: 35px 0;
text-align: center;
}
.service_list h1:before {
left:75px;
}
.service_list h1 {
font-size: 38px;
}
.service_list {
padding: 60px 0;
}
.service_item .ss_list {
width: 320px;
padding-left: 0;
padding-bottom: 30px;
text-align: center;
}
.work_slider {
width: 80%;
margin: 0 auto;
}
.slider_detail h3 {
padding-top: 80px;
}
.promo_title h1, .work_title h1 {
font-size: 30px;
}
.rightimg {
background:none;
right: 0;
top: 0;
width:0;
height: 0;
opacity: 0;
}
.contact input[type="text"], .contact input[type="email"], .contact textarea{
width:320px;
}
.submit a {
padding: 10px;
}
.promo_title, .work_title {
padding: 40px 0;
}
}
/* Smartphones (portrait and landscape) ----------- */
@media screen and (min-width : 320px) {
.colum {
max-width: 320px;
margin: 0 auto;
}
.navbar-header h1 {
margin-left: 20px;
}
.welcome_text h1 {
font-size: 25px;
margin: 12px 0;
letter-spacing: 12px;
}
.welcome_text h4 {
font-size: 15px;
}
.promo_title h1, .work_title h1 {
max-width: 320px;
}
.promo_title p, .work_title p{
font-size: 12px;
color: #7e8287;
width: 300px;
padding:0;
}
.single_list {
border-bottom: 1px solid #d9dbdb;
border-right: 0;
padding: 20px 0;
width: 320px;
}
.promo_list div:last-child {
border-bottom: 0;
}
.promo_area {
margin-bottom: -230px;
}
.floatleft {
float: none;
}
.leftarea {
width: 320px;
}
.leftarea h1 {
text-align: center
}
.service_list p {
padding: 35px 0;
text-align: center;
}
.service_list h1:before {
left:75px;
}
.service_list h1 {
font-size: 38px;
}
.service_list {
padding: 60px 0;
}
.service_item .ss_list {
width: 320px;
padding-left: 0;
padding-bottom: 30px;
text-align: center;
}
.work_slider {
width: 100%;
}
.slider_detail h3 {
padding-top: 60px;
}
.promo_title h1, .work_title h1 {
font-size: 30px;
}
.rightimg {
background:none;
right: 0;
top: 0;
width:0;
height: 0;
opacity: 0;
}
.contact input[type="text"], .contact input[type="email"], .contact textarea{
width:320px;
}
.submit a {
padding: 10px;
}
.promo_title, .work_title {
padding: 40px 0;
}
}
答案 0 :(得分:1)
这是错误的代码.. @media screen和(min-width:320px){ 此代码将在320px及更高版本的屏幕上运行 如果你把代码放在这里当然这个代码将运行在480px和680px }
顶部阻止来自480px和680px的代码 就这样吧 @media screen和(min-width:320px)和(max-width:479px){ 这里的代码 }
答案 1 :(得分:0)
尝试打击代码:
1
@media screen and (max-width: 320px){code}
@media (min-width: 320px) and (max-width: 480px) {code}
我希望你的问题能够得到解决
答案 2 :(得分:0)
试试这个。
<!DOCTYPE html>
<html>
<head>
<style>
body {
background-color: lightblue;
}
@media screen and (max-width: 850px) {
body {
background-color: lightcoral;
}
}
@media screen and (max-width: 480px) {
body {
background-color: lightgreen;
}
}
</style>
</head>
<body>
<h1>Resize the browser window to see the effect!</h1>
<p>The media query will only apply if the media type is screen and the viewport is 480px wide or wider.</p>
</body>
</html>
答案 3 :(得分:0)
(编辑说明:更正了一些拼写错误和错误)
你必须考虑CSS是“级联”(=下降),这意味着:如果你对同一个元素有两个不同的规则,后者(= lower)将覆盖前一个。所以在你的第一个代码示例中:
@media screen and (max-width: 320px){code}
@media screen and (max-width: 480px){code}
@media screen and (max-width: 640px){code}
在第三个媒体查询中写入的任何内容(最大宽度:640)将覆盖第一个查询中写入的内容,因为低于320px宽的所有内容也低于640px宽。< / p>
所以你有两个选择:
1。)转动订单:
@media screen and (max-width: 640px){code}
@media screen and (max-width: 480px){code}
@media screen and (max-width: 320px){code}
这样,如果屏幕宽度为300px,它将首先遵循前两个查询中的规则,但也会遵循第三个查询中的规则,这将覆盖其他查询。这被称为桌面优先方法,因为它首先列出了更大(桌面)屏幕(在媒体查询之上)的规则,然后通过三个步骤(较小的设备的规则,第一个最大640,然后是480,然后是320px)覆盖规则)。因此,450px宽的phablet将读取第一个和第二个查询中的规则(第二个覆盖第一个),然后停止并忽略第三个媒体查询中的规则,因为它不低于320px宽。
作为替代方案:
2.。)按升序使用媒体查询,但使用最小宽度:
@media screen and (min-width: 320px){code}
@media screen and (min-width: 480px){code}
@media screen and (min-width: 640px){code}
这是一种移动优先方法:首先列出移动规则(即至少 320px宽的所有内容),然后再进一步提升。因此,360px设备将在第二次媒体查询后停止读取规则,桌面计算机将读取所有这三个规则,并且第三个规则中的规则将覆盖第一个查询中的规则。