简体   繁体   English

弹性项目 CSS 中文本的 Alignment

[英]Alignment of text in flex item CSS

Following is the code, which is working fine in most cases except when text is too long then the text adjusts itself from going up.以下是代码,在大多数情况下都可以正常工作,除非文本太长,然后文本会自行调整以防止上升。 Let me know how can i align the item to center even when the text is long as per the screenshot.让我知道即使文本根据屏幕截图很长,我如何将项目对齐到中心。

结果

Code -代码 -

 * { box-sizing: border-box; }.container { background: #CECCEC; padding: 20px; display: flex; flex-direction: column; }.row { display: flex; flex: 1; background: #b2afe0; margin-bottom: 20px; padding: 10px; box-shadow: 0 0 0 4px #b2afe0; }.row:hover { transform: translate3d(0, -4px, 1px); transition-duration: .5s; }.col { flex: 1; display: flex; justify-content: center; align-items: center; }.row:last-child { margin-bottom: 0; }
 <div class="container"> <div class="row"> <div class="col">This is Column 11</div> <div class="col">Lorem ipsum dolor sit amet consectetur adipisicing elit. Reprehenderit id ut reiciendis facilis deleniti laboriosam ducimus voluptate maiores ipsa distinctio.</div> <div class="col">This is Column 13</div> <div class="col">This is Column 14</div> <div class="col">This is Column 15</div> </div> <div class="row"> <div class="col">This is Column 21</div> <div class="col">This is Column 22</div> <div class="col">This is Column 23</div> <div class="col">Lorem ipsum dolor sit amet consectetur adipisicing elit. Reprehenderit id ut reiciendis facilis deleniti laboriosam ducimus voluptate maiores ipsa distinctio.</div> <div class="col">This is Column 25</div> </div> <div class="row"> <div class="col">This is Column 31</div> <div class="col">This is Column 32</div> <div class="col">Lorem ipsum dolor sit amet consectetur adipisicing elit. Reprehenderit id ut reiciendis facilis deleniti laboriosam ducimus voluptate maiores ipsa distinctio.</div> <div class="col">This is Column 34</div> <div class="col">This is Column 35</div> </div> </div>

Is this what you want?这是你想要的吗?

I've added .col {text-align: center;} for clarification.我添加了.col {text-align: center;}以进行澄清。

 * { box-sizing: border-box; }.container { background: #CECCEC; padding: 20px; display: flex; flex-direction: column; }.row { display: flex; flex: 1; background: #b2afe0; margin-bottom: 20px; padding: 10px; box-shadow: 0 0 0 4px #b2afe0; }.row:hover { transform: translate3d(0,-4px,1px); transition-duration: .5s; }.col { flex: 1; display: flex; justify-content: center; align-items: center; text-align: center }.row:last-child { margin-bottom: 0; }
 <div class="container"> <div class="row"> <div class="col">This is Column 11</div> <div class="col">Lorem ipsum dolor sit amet consectetur adipisicing elit. Reprehenderit id ut reiciendis facilis deleniti laboriosam ducimus voluptate maiores ipsa distinctio.</div> <div class="col">This is Column 13</div> <div class="col">This is Column 14</div> <div class="col">This is Column 15</div> </div> <div class="row"> <div class="col">This is Column 21</div> <div class="col">This is Column 22</div> <div class="col">This is Column 23</div> <div class="col">Lorem ipsum dolor sit amet consectetur adipisicing elit. Reprehenderit id ut reiciendis facilis deleniti laboriosam ducimus voluptate maiores ipsa distinctio.</div> <div class="col">This is Column 25</div> </div> <div class="row"> <div class="col">This is Column 31</div> <div class="col">This is Column 32</div> <div class="col">Lorem ipsum dolor sit amet consectetur adipisicing elit. Reprehenderit id ut reiciendis facilis deleniti laboriosam ducimus voluptate maiores ipsa distinctio.</div> <div class="col">This is Column 34</div> <div class="col">This is Column 35</div> </div> </div>

I figured it out on my own.我自己想通了。 My mistake was I am using align-items: center;我的错误是我使用align-items: center; instead it should be align-items: flex-start;相反,它应该是align-items: flex-start; . .

Working example -工作示例 -

 * { box-sizing: border-box; }.container { background: #CECCEC; padding: 20px; display: flex; flex-direction: column; }.row { display: flex; flex: 1; background: #b2afe0; margin-bottom: 20px; padding: 10px; box-shadow: 0 0 0 4px #b2afe0; }.row:hover { transform: translate3d(0,-4px,1px); transition-duration: .5s; }.col { flex: 1; display: flex; justify-content: center; align-items: flex-start; }.row:last-child { margin-bottom: 0; }
 <div class="container"> <div class="row"> <div class="col">This is Column 11</div> <div class="col">Lorem ipsum dolor sit amet consectetur adipisicing elit. Reprehenderit id ut reiciendis facilis deleniti laboriosam ducimus voluptate maiores ipsa distinctio.</div> <div class="col">This is Column 13</div> <div class="col">This is Column 14</div> <div class="col">This is Column 15</div> </div> <div class="row"> <div class="col">This is Column 21</div> <div class="col">This is Column 22</div> <div class="col">This is Column 23</div> <div class="col">Lorem ipsum dolor sit amet consectetur adipisicing elit. Reprehenderit id ut reiciendis facilis deleniti laboriosam ducimus voluptate maiores ipsa distinctio.</div> <div class="col">This is Column 25</div> </div> <div class="row"> <div class="col">This is Column 31</div> <div class="col">This is Column 32</div> <div class="col">Lorem ipsum dolor sit amet consectetur adipisicing elit. Reprehenderit id ut reiciendis facilis deleniti laboriosam ducimus voluptate maiores ipsa distinctio.</div> <div class="col">This is Column 34</div> <div class="col">This is Column 35</div> </div> </div>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM