首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Angular Material List:如何防止mat-list-items包装内容?

Angular Material List:如何防止mat-list-items包装内容?
EN

Stack Overflow用户
提问于 2018-08-31 04:41:30
回答 2查看 7.9K关注 0票数 2

在我的Angular Material应用程序中,我有一个包含多行(mat- list -item)的列表(mat-list)。

我试图阻止mat-list-item包装它们的内容。

例如,而不是这样:

IT架构师

在通用电气

它应该看起来像这样:

通用电气的

IT架构师

下面是html:

component.html:

代码语言:javascript
复制
<mat-list>
      <mat-list-item class="no-wrap">                    
          <h3 class="name"> {{firstName}} {{lastName}} </h3>                                       
      </mat-list-item> 
      <mat-divider></mat-divider>  
      <mat-list-item class="no-wrap" *ngIf="position && company"> {{position}} at {{company}} </mat-list-item>
      <div class="gap"></div>    
      <mat-list-item class="no-wrap">
          <mat-icon>email</mat-icon>
          <span class="email"> {{email}} </span>
      </mat-list-item>
  </mat-list>

我试着用下面的CSS实现我的目标:

component.css:

代码语言:javascript
复制
.no-wrap {
    word-wrap: break-word;
    white-space: pre-wrap;
}

然而,这不起作用。

如何防止角度材质列表中的项目对其包含的文本进行换行?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-31 04:48:07

代码语言:javascript
复制
    <mat-list>
          <mat-list-item class="no-wrap">                    
              <h3 class="name"> <span class="nobreak"> {{firstName}} {{lastName}} </span> </h3>                                       
          </mat-list-item> 
          <mat-divider></mat-divider>  
          <mat-list-item class="no-wrap" *ngIf="position && company"> <span class="nobreak"> {{position}} at {{company}} </span> </mat-list-item>
          <div class="gap"></div>    
          <mat-list-item class="no-wrap">
              <mat-icon>email</mat-icon>
              <span class="email"> {{email}} </span>
          </mat-list-item>
    </mat-list>

css

代码语言:javascript
复制
 .no-wrap {
   overflow: hidden;
   text-overflow: ellipsis;
   white-space: nowrap;
 }
票数 2
EN

Stack Overflow用户

发布于 2021-04-06 06:07:01

运行Angular 11.X

另一种选择是在树周围添加一个滚动视口,然后将mat- tree -节点的CSS设置为空白: nowrap

代码语言:javascript
复制
<mat-card>
  <mat-card-content>
    <cdk-virtual-scroll-viewport itemSize="30" class="tree">
      <ng-container *cdkVirtualFor="let item of dataSource"></ng-container>
      <mat-tree [dataSource]="dataSource" [treeControl]="treeControl">
        <mat-tree-node *matTreeNodeDef="let node" matTreeNodeToggle matTreeNodePadding matTreeNodePaddingIndent="20px" class="tree-node">
          <button mat-icon-button disabled></button>
          {{node.name}}
        </mat-tree-node>
        <mat-tree-node *matTreeNodeDef="let node; when: hasChild" matTreeNodePadding matTreeNodePaddingIndent="20px" class="tree-node">
          <button mat-icon-button matTreeNodeToggle [attr.aria-label]="'Toggle ' + node.name">
            <mat-icon class="mat-icon-rtl-mirror">
              {{treeControl.isExpanded(node) ? 'expand_more' : 'chevron_right'}}
            </mat-icon>
          </button>
          {{node.name}}
        </mat-tree-node>
      </mat-tree>
    </cdk-virtual-scroll-viewport>
  </mat-card-content>
</mat-card>

CSS

代码语言:javascript
复制
.type-icon {
  color: #757575;
  margin-right: 5px;
}

.tree-node {
  height: 30px;
  min-height: 30px;
  white-space: nowrap;
}

.tree {
  height: 600px;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52105058

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档