如何在嵌套行上设置断点 Bootstrap
How to setup breakpoints on nested rows Bootstrap
我目前正在学习制作响应式网站。当屏幕尺寸改变时,我对如何做内容的断点感到困惑。这是我想要做的:
以下代码仅适用于桌面尺寸:
<div className="row wrapper-about">
<div className="col-lg-6 col-md-6 col-6">
<div className="img-box">
<img src="/pp1.jpg" alt="foto.jpg" />
</div>
</div>
<div className="col-lg-6 col-md-6 col-6">
<div className="row">
<div className="desc-container">
<h5 className="text-justify">
Content 2
</h5>
</div>
</div>
<div className="row desc2-d">
<span>
Content3
</span>
</div>
</div>
</div>
对于 Bootstrap 网格,您必须将 C3 div 放置两次。一次位于第一行的第二列(用于桌面视图),另一列位于第一行下方(用于移动视图);然后根据768px断点切换可见性得到你想要的...
下面的代码片段:
.divC1 {
border: 5px solid red;
height: 300px;
}
.divC2 {
border: 5px solid green;
height: 150px;
}
.divC3 {
border: 5px solid yellow;
height: 150px;
}
@media screen and (max-width:768px) {
.divC2 {
height: 300px
}
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<div class="container-fluid">
<div class="row">
<div class='col-6 col-sm-6'>
<div class="row">
<div class="col-sm-12 divC1"> C1
</div>
</div>
</div>
<div class='col-6 col-sm-6'>
<div class="row">
<div class="col-sm-12 divC2"> C2
</div>
<div class="col-sm-12 divC3 d-none d-md-block"> C3
</div>
</div>
</div>
<div class='col-12 divC3 d-block d-md-none'> C3
</div>
</div>
</div>
我认为以下代码会对您有所帮助。
.c1 { height:200px; outline:2px solid red; outline-offset: -5px; }
.c2 { height:100px; outline:2px solid green; outline-offset: -5px; }
.c3 { height:100px; outline:2px solid yellow; outline-offset: -5px; }
@media only screen and (max-width:768px) and (min-width:200px) {
.c1 { height:auto; }
.c2 { height:auto; }
.c3 { height:auto;}
}
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6 c1">
C1
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6 c2">
C2
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-12 c3">
C3
</div>
获得此布局的最简单方法(无额外 CSS 或重复标记)是禁用 flexbox 以适应更大的屏幕宽度并使用浮动实用程序:
https://www.codeply.com/go/snVOquHz1k
<div class="container">
<div class="row d-md-block">
<div class="col-6 col-md-8 float-left border border-danger c1">
c1
</div>
<div class="col-6 col-md-4 float-left border border-success">
c2
</div>
<div class="col-12 col-md-4 float-left border border-warning">
c3
</div>
</div>
</div>
之前回答过类似问题:
我目前正在学习制作响应式网站。当屏幕尺寸改变时,我对如何做内容的断点感到困惑。这是我想要做的:
以下代码仅适用于桌面尺寸:
<div className="row wrapper-about">
<div className="col-lg-6 col-md-6 col-6">
<div className="img-box">
<img src="/pp1.jpg" alt="foto.jpg" />
</div>
</div>
<div className="col-lg-6 col-md-6 col-6">
<div className="row">
<div className="desc-container">
<h5 className="text-justify">
Content 2
</h5>
</div>
</div>
<div className="row desc2-d">
<span>
Content3
</span>
</div>
</div>
</div>
对于 Bootstrap 网格,您必须将 C3 div 放置两次。一次位于第一行的第二列(用于桌面视图),另一列位于第一行下方(用于移动视图);然后根据768px断点切换可见性得到你想要的...
下面的代码片段:
.divC1 {
border: 5px solid red;
height: 300px;
}
.divC2 {
border: 5px solid green;
height: 150px;
}
.divC3 {
border: 5px solid yellow;
height: 150px;
}
@media screen and (max-width:768px) {
.divC2 {
height: 300px
}
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<div class="container-fluid">
<div class="row">
<div class='col-6 col-sm-6'>
<div class="row">
<div class="col-sm-12 divC1"> C1
</div>
</div>
</div>
<div class='col-6 col-sm-6'>
<div class="row">
<div class="col-sm-12 divC2"> C2
</div>
<div class="col-sm-12 divC3 d-none d-md-block"> C3
</div>
</div>
</div>
<div class='col-12 divC3 d-block d-md-none'> C3
</div>
</div>
</div>
我认为以下代码会对您有所帮助。
.c1 { height:200px; outline:2px solid red; outline-offset: -5px; }
.c2 { height:100px; outline:2px solid green; outline-offset: -5px; }
.c3 { height:100px; outline:2px solid yellow; outline-offset: -5px; }
@media only screen and (max-width:768px) and (min-width:200px) {
.c1 { height:auto; }
.c2 { height:auto; }
.c3 { height:auto;}
}
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6 c1">
C1
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-6 c2">
C2
</div>
<div class="col-lg-6 col-md-6 col-sm-6 col-xs-12 c3">
C3
</div>
获得此布局的最简单方法(无额外 CSS 或重复标记)是禁用 flexbox 以适应更大的屏幕宽度并使用浮动实用程序:
https://www.codeply.com/go/snVOquHz1k
<div class="container">
<div class="row d-md-block">
<div class="col-6 col-md-8 float-left border border-danger c1">
c1
</div>
<div class="col-6 col-md-4 float-left border border-success">
c2
</div>
<div class="col-12 col-md-4 float-left border border-warning">
c3
</div>
</div>
</div>
之前回答过类似问题: