如何使项目在移动视图上堆叠
How to make items stack on mobile view
我已经在桌面屏幕上使用 display flex 并排制作了 3 张图像,但现在我想让它们响应并使项目在移动模式下堆叠。谁能告诉我怎么做?
代码:
.row {
display: flex;
}
.column {
padding: 200px;
text-align: center;
flex: 10%;
}
.column img {
border-radius: 50%;
width: 300px;
border: 2px solid white;
}
.column p {
color: white;
padding-top: 50px;
font-size: 24px;
}
.partners-h1 p {
font-family: "BatmanForeverAlternate";
font-size-adjust: 10px;
color: white;
}
.partners-h1 {
text-align: center;
font-size: 30px;
}
/* added for demonstration purpose by editor */
body {
background-color: black;
}
<div class="row">
<div class="column">
<img src="images/sneak.jpg">
<p>Sneak Energy</p>
</div>
<div class="column">
<img src="images/kontrol.png">
<p>Kontrol Freek</p>
</div>
<div class="column">
<img src="images/astro.jpg">
<p>Astro Gaming</p>
</div>
</div>
添加媒体查询以解决特定宽度的屏幕,例如:
@media only screen
and (max-width: 800px) {
selector {
property: value;
}
}
然后将 flex-direction
属性 从默认的 row
更改为 column
:
flex-direction: column;
参考媒体查询:MDN Web Docs
.row {
display: flex;
}
@media only screen
and (max-width: 800px) {
.row {
flex-direction: column;
}
}
.column {
padding: 200px;
text-align: center;
flex: 10%;
}
.column img {
border-radius: 50%;
width: 300px;
border: 2px solid white;
}
.column p {
color: white;
padding-top: 50px;
font-size: 24px;
}
.partners-h1 p {
font-family: "BatmanForeverAlternate";
font-size-adjust: 10px;
color: white;
}
.partners-h1 {
text-align: center;
font-size: 30px;
}
/* added for demonstration purpose by editor */
body {
background-color: black;
}
<div class="row">
<div class="column">
<img src="images/sneak.jpg">
<p>Sneak Energy</p>
</div>
<div class="column">
<img src="images/kontrol.png">
<p>Kontrol Freek</p>
</div>
<div class="column">
<img src="images/astro.jpg">
<p>Astro Gaming</p>
</div>
</div>
我能想到两种方法来解决这个问题。
方法一:使用媒体查询
.row {
display: flex;
flex-direction:column; /* Initially, mobile first */
}
/* If minimum screen width is 320, switch to side by side. Replace 320 with whatever screen size you want to swap between horizontal and stacked view */
@media (min-width:320px)
{
.row {
flex-direction:row;
}
}
.column {
padding: 200px;
text-align: center;
flex: 10%;
}
.column img {
border-radius: 50%;
width: 300px;
border: 2px solid white;
}
.column p {
color: white;
padding-top: 50px;
font-size: 24px;
}
.partners-h1 p {
font-family: "BatmanForeverAlternate";
font-size-adjust: 10px;
color: white;
}
.partners-h1 {
text-align: center;
font-size: 30px;
}
/* added for demonstration purpose by editor */
body {
background-color: black;
}
<div class="row">
<div class="column">
<img src="images/sneak.jpg">
<p>Sneak Energy</p>
</div>
<div class="column">
<img src="images/kontrol.png">
<p>Kontrol Freek</p>
</div>
<div class="column">
<img src="images/astro.jpg">
<p>Astro Gaming</p>
</div>
</div>
方法二:当两张图片放不下时使用flex-wrap自动堆叠
.row {
display: flex;
flex-wrap:wrap;
}
.column {
padding: 200px;
text-align: center;
flex: 10%;
}
.column img {
border-radius: 50%;
width: 300px;
border: 2px solid white;
}
.column p {
color: white;
padding-top: 50px;
font-size: 24px;
}
.partners-h1 p {
font-family: "BatmanForeverAlternate";
font-size-adjust: 10px;
color: white;
}
.partners-h1 {
text-align: center;
font-size: 30px;
}
/* added for demonstration purpose by editor */
body {
background-color: black;
}
<div class="row">
<div class="column">
<img src="images/sneak.jpg">
<p>Sneak Energy</p>
</div>
<div class="column">
<img src="images/kontrol.png">
<p>Kontrol Freek</p>
</div>
<div class="column">
<img src="images/astro.jpg">
<p>Astro Gaming</p>
</div>
</div>
我已经在桌面屏幕上使用 display flex 并排制作了 3 张图像,但现在我想让它们响应并使项目在移动模式下堆叠。谁能告诉我怎么做?
代码:
.row {
display: flex;
}
.column {
padding: 200px;
text-align: center;
flex: 10%;
}
.column img {
border-radius: 50%;
width: 300px;
border: 2px solid white;
}
.column p {
color: white;
padding-top: 50px;
font-size: 24px;
}
.partners-h1 p {
font-family: "BatmanForeverAlternate";
font-size-adjust: 10px;
color: white;
}
.partners-h1 {
text-align: center;
font-size: 30px;
}
/* added for demonstration purpose by editor */
body {
background-color: black;
}
<div class="row">
<div class="column">
<img src="images/sneak.jpg">
<p>Sneak Energy</p>
</div>
<div class="column">
<img src="images/kontrol.png">
<p>Kontrol Freek</p>
</div>
<div class="column">
<img src="images/astro.jpg">
<p>Astro Gaming</p>
</div>
</div>
添加媒体查询以解决特定宽度的屏幕,例如:
@media only screen
and (max-width: 800px) {
selector {
property: value;
}
}
然后将 flex-direction
属性 从默认的 row
更改为 column
:
flex-direction: column;
参考媒体查询:MDN Web Docs
.row {
display: flex;
}
@media only screen
and (max-width: 800px) {
.row {
flex-direction: column;
}
}
.column {
padding: 200px;
text-align: center;
flex: 10%;
}
.column img {
border-radius: 50%;
width: 300px;
border: 2px solid white;
}
.column p {
color: white;
padding-top: 50px;
font-size: 24px;
}
.partners-h1 p {
font-family: "BatmanForeverAlternate";
font-size-adjust: 10px;
color: white;
}
.partners-h1 {
text-align: center;
font-size: 30px;
}
/* added for demonstration purpose by editor */
body {
background-color: black;
}
<div class="row">
<div class="column">
<img src="images/sneak.jpg">
<p>Sneak Energy</p>
</div>
<div class="column">
<img src="images/kontrol.png">
<p>Kontrol Freek</p>
</div>
<div class="column">
<img src="images/astro.jpg">
<p>Astro Gaming</p>
</div>
</div>
我能想到两种方法来解决这个问题。
方法一:使用媒体查询
.row {
display: flex;
flex-direction:column; /* Initially, mobile first */
}
/* If minimum screen width is 320, switch to side by side. Replace 320 with whatever screen size you want to swap between horizontal and stacked view */
@media (min-width:320px)
{
.row {
flex-direction:row;
}
}
.column {
padding: 200px;
text-align: center;
flex: 10%;
}
.column img {
border-radius: 50%;
width: 300px;
border: 2px solid white;
}
.column p {
color: white;
padding-top: 50px;
font-size: 24px;
}
.partners-h1 p {
font-family: "BatmanForeverAlternate";
font-size-adjust: 10px;
color: white;
}
.partners-h1 {
text-align: center;
font-size: 30px;
}
/* added for demonstration purpose by editor */
body {
background-color: black;
}
<div class="row">
<div class="column">
<img src="images/sneak.jpg">
<p>Sneak Energy</p>
</div>
<div class="column">
<img src="images/kontrol.png">
<p>Kontrol Freek</p>
</div>
<div class="column">
<img src="images/astro.jpg">
<p>Astro Gaming</p>
</div>
</div>
方法二:当两张图片放不下时使用flex-wrap自动堆叠
.row {
display: flex;
flex-wrap:wrap;
}
.column {
padding: 200px;
text-align: center;
flex: 10%;
}
.column img {
border-radius: 50%;
width: 300px;
border: 2px solid white;
}
.column p {
color: white;
padding-top: 50px;
font-size: 24px;
}
.partners-h1 p {
font-family: "BatmanForeverAlternate";
font-size-adjust: 10px;
color: white;
}
.partners-h1 {
text-align: center;
font-size: 30px;
}
/* added for demonstration purpose by editor */
body {
background-color: black;
}
<div class="row">
<div class="column">
<img src="images/sneak.jpg">
<p>Sneak Energy</p>
</div>
<div class="column">
<img src="images/kontrol.png">
<p>Kontrol Freek</p>
</div>
<div class="column">
<img src="images/astro.jpg">
<p>Astro Gaming</p>
</div>
</div>