web-dev-qa-db-ja.com

angular 6でコンテンツをより多く表示し、より少なく表​​示する方法

6つのコンテンツdivがあります。また、各divの文字数制限を使用しています。 bootstrap 4 angular 6バージョンを使用しました。

6 divいくつかのトグルdivコンテンツが開かれ、一部が閉じられました このケースを達成する方法。

5
Amol

いくつかのカスタムCSSで実装するのは非常に簡単です。これを試してみてください:

テンプレート:

<div class="container" [class.show]="show">
    Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.
</div>
<button (click)="show = !show">{{ show ? 'Show less': 'Show More' }}</button>

CSS:

.container {
  font-size: 16px;
  line-height: 16px;
  height: 32px;
  overflow: hidden;
}

.show {
  overflow: visible;
  height: auto;
}

成分:

show = false;

これが、参考のための Sample StackBlitz です。

6
SiddAjmera

追加のhtmlノードを作成しない<ng-container>を使用できます

<div class="container" [class.show]="show">
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. 
  Curabitur a felis odio. Nam et feugiat purus. 
  Nunc non ex mi. Phasellus at arcu id tortor gravida pellentesque. 

  <ng-container *ngIf="showMore1">

  Duis enim justo, placerat non dui non, placerat semper est. 
  Ut pulvinar aliquet lectus vulputate rutrum. 
  Maecenas suscipit, sapien ut fermentum hendrerit, 
  nibh augue scelerisque felis, in fermentum elit augue sed odio. 
  ...

  </ng-container>
</div>

<button (click)="showMore1= !showMore1">show {{showMore1 ?'less':'more' }}</button>
0