简体   繁体   English

在引导网格中为 div 赋予宽度

[英]Giving width to div in bootstrap grid

I am creating an inbox page, and need to give width to date column so it can display inline instead word break.我正在创建一个收件箱页面,并且需要为日期列提供宽度,以便它可以显示内联而不是分词。

I tried white-space: nowrap but overflow hide it because of width.我尝试了 white-space: nowrap 但由于宽度而溢出隐藏它。

I want name class and date class show inline width equal width like this.我希望名称类和日期类像这样显示内联宽度等于宽度。

Username, (date at end) 2 years 5 hours 30 min, 25 sec ago用户名,(结束日期)2 年 5 小时 30 分 25 秒前

看图片

Here is the code :这是代码:

 $(".message-wrapper").click(function() { $(this).toggleClass("swipe-left"); });
 .messages-container { overflow-x: hidden; background: var(--bs-white); cursor: pointer; } .message-wrapper { all: unset; display: grid; grid-template-columns: 60px auto 10ch; transition: transform 0.3s; position: relative; } .message-wrapper .delete-btn { position: absolute; top: 0; bottom: 0; right: -80px; width: 80px; background: var(--bs-danger); display: flex; justify-content: center; align-items: center; color: white; } .message-wrapper .thumbnail { align-self: center; grid-row: 1/3; aspect-ratio: 1; border-radius: 50%; background: var(--bs-info); color: var(--bs-light); display: flex; align-items: center; justify-content: center; } .message-wrapper .name, .message-wrapper .message-text { overflow: hidden; word-break: break-word; } .message-wrapper .name { align-self: center; color: var(--bs-dark); } .message-wrapper .ago-time { justify-self: start; color: var(--bs-secondary); } .message-wrapper .message-text { grid-column: 2/4; color: var(--bs-secondary); } .message-wrapper.swipe-left { transform: translateX(-80px); }
 <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons+Round"> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet"> <div class="messages-container mx-3"> <a class="message-wrapper border-bottom p-3"> <div class="thumbnail me-3"> N </div> <div class="name h5 m-0"> No One </div> <div class="ago-time small"> 30 min, 25 sec ago </div> <div class="message-text"> Es ist ein lang erwiesener Fakt, dass ein Leser vom Text abgelenkt wird, wenn er sich ein Layout ansieht.</div> <div class="delete-btn"> <span class="material-icons-round">delete</span> </div> </a> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

Added inline-block as display on name and date containers, then specifically no wrap on the date.添加了内联块作为名称和日期容器上的显示,然后特别是在日期上不换行。

 $(".message-wrapper").click(function() { $(this).toggleClass("swipe-left"); });
 .messages-container { overflow-x: hidden; background: var(--bs-white); cursor: pointer; } .message-wrapper { all: unset; display: grid; grid-template-columns: 60px auto 10ch; transition: transform 0.3s; position: relative; } .message-wrapper .delete-btn { position: absolute; top: 0; bottom: 0; right: -80px; width: 80px; background: var(--bs-danger); display: flex; justify-content: center; align-items: center; color: white; } .message-wrapper .thumbnail { align-self: center; grid-row: 1/3; aspect-ratio: 1; border-radius: 50%; background: var(--bs-info); color: var(--bs-light); display: flex; align-items: center; justify-content: center; } .message-wrapper .name, .message-wrapper .message-text { overflow: hidden; word-break: break-word; } .message-wrapper .name { display: inline-block; align-self: center; color: var(--bs-dark); } .message-wrapper .ago-time { display: inline-block; white-space: nowrap; justify-self: start; color: var(--bs-secondary); } .message-wrapper .message-text { grid-column: 2/4; color: var(--bs-secondary); } .message-wrapper.swipe-left { transform: translateX(-80px); }
 <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons+Round"> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet"> <div class="messages-container mx-3"> <a class="message-wrapper border-bottom p-3"> <div class="thumbnail me-3"> N </div> <div class="name h5 m-0"> No One </div> <div class="ago-time small"> 30 min, 25 sec ago </div> <div class="message-text"> Es ist ein lang erwiesener Fakt, dass ein Leser vom Text abgelenkt wird, wenn er sich ein Layout ansieht.</div> <div class="delete-btn"> <span class="material-icons-round">delete</span> </div> </a> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

To achieve the behavior which accommodate a long date.实现适应长约会的行为。 You need to change the HTML structure like below.您需要更改 HTML 结构,如下所示。

<div class="d-flex align-items-center justify-content-between">
    <div class="name h5 m-0">
      No One
    </div>
    <div class="ago-time small">
      2 years 5 hours 30 min, 25 sec ago
    </div>
</div>

by wrapping the title and date into a flex container with justify between property.通过将标题和日期包装到一个弹性容器中,并在属性之间进行对齐。 jsfiddle . jsfiddle

 $(".message-wrapper").click(function() { $(this).toggleClass("swipe-left"); });
 .messages-container { overflow-x: hidden; background: var(--bs-white); cursor: pointer; } .message-wrapper { all: unset; display: grid; grid-template-columns: 60px auto 10ch; transition: transform 0.3s; position: relative; } .message-wrapper .delete-btn { position: absolute; top: 0; bottom: 0; right: -80px; width: 80px; background: var(--bs-danger); display: flex; justify-content: center; align-items: center; color: white; } .message-wrapper .thumbnail { align-self: center; grid-row: 1/3; aspect-ratio: 1; border-radius: 50%; background: var(--bs-info); color: var(--bs-light); display: flex; align-items: center; justify-content: center; } .message-wrapper .name, .message-wrapper .message-text { overflow: hidden; word-break: break-word; } .message-wrapper .name { align-self: center; color: var(--bs-dark); } .message-wrapper .ago-time { justify-self: start; color: var(--bs-secondary); } .message-wrapper .message-text { grid-column: 2/4; color: var(--bs-secondary); } .message-wrapper.swipe-left { transform: translateX(-80px); }
 <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons+Round"> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet"> <div class="messages-container mx-3"> <a class="message-wrapper border-bottom px-2"> <div class="thumbnail me-3"> N </div> <div class="d-flex align-items-center justify-content-between"> <div class="name h5 m-0"> No One </div> <div class="ago-time small"> 2 years 5 hours 30 min, 25 sec ago </div> </div> <div class="message-text"> Es ist ein lang erwiesener Fakt, dass ein Leser vom Text abgelenkt wird, wenn er sich ein Layout ansieht.</div> <div class="delete-btn"> <span class="material-icons-round">delete</span> </div> </a> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

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

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