【发布时间】:2021-07-20 14:55:03
【问题描述】:
我的 flex 有两个问题需要帮助解决。我在这里创建了一个小提琴来访问:https://jsfiddle.net/dmj5yscz/
问题 1:我无法将元素移动到中心(见屏幕截图中的红色)。在各个地方尝试了 margin-left:auto 和 margin-right:auto 但没有运气。 (注意:仅当宽度不超过 1144 像素时才会发生)
问题 2:我希望文本在中心垂直对齐(任何屏幕宽度)
代码如下:
<!-- newsletter section -->
<div class="newsletter_section">
<div class="newsletter_inner_section">
<div class="newsletter_left content-box">
<img src="xxx">
</div>
<div class="newsletter_mobile_col">
<div class="newsletter_center content-box">
<p class="newsletter_text_section">Text1 </p>
</div>
<p class="newsletter_input_section">Text2 </p>
</div>
</div>
</div>
/* newsletter section */
.newsletter_inner_section{
display:flex;
}
.newsletter_gif{
width:150px;
height:auto;
}
.newsletter_left,
.newsletter_center,
.newsletter_right{
display:inline-flex;
}
.newsletter_left{
width:auto;
}
.newsletter_center{
width:100%;
}
.newsletter_right{
width:40%;
justify-content:flex-end;
}
.newsletter_text_section{
color:black !important;
font-size:20px !important;
font-weight:bold;
}
/* Media Newsletter section only */
@media (max-width:1144px){
.newsletter_right,
.newsletter_center{
width:auto;
}
.content-box {
display: flex;
flex-direction: column;
justify-content: center;
align-content: center;
}
.newsletter_inner_section{
justify-content:center;
display: flex;
flex-direction:row;
}
.newsletter_text_section{
padding-left:15px;
margin-bottom:0;
}
.newsletter_mobile_col {
flex-grow: 1;
display: flex;
flex-direction: column;
}
}
@media (max-width:565px){
.newsletter_inner_section{
flex-direction:column;
}
.newsletter_left{
margin-left:auto;
margin-right:auto;
}
.newsletter_gif{
padding-bottom:20px;
}
}
【问题讨论】: