【问题标题】:My div is fixed, but when i open one dialog (popup), div is no more fixed我的 div 是固定的,但是当我打开一个对话框(弹出窗口)时,div 不再固定
【发布时间】:2020-06-01 16:59:38
【问题描述】:

我有一个 div 通知,它位于固定位置,您可以在第一个屏幕中看到。当我通过单击更新或删除按钮打开对话框时,当弹出窗口(对话框)打开时,div 通知不再固定。如何解决这个问题,当我打开对话框时,div 保持相同的固定位置。

.list {
  width: 90%;
  margin: 0 auto;
  margin-bottom: 3%;
  display: flex;
}

.content {
  width: 100%;
  margin-left: 22%;
}

table {
  width: 100%;
}

img {
  height: 140px;
  width: 100px;
  margin-top: 5%;
  margin-bottom: 5%;
}

.update {
  color: grey;
}

.notifications {
  width: 16%;
  position: fixed;
  text-align: center;
  border-radius: 10px;
  -webkit-box-shadow: 9px 9px 18px 3px rgba(163,158,163,1);
  -moz-box-shadow: 9px 9px 18px 3px rgba(163,158,163,1);
  box-shadow: 9px 9px 18px 3px rgba(163,158,163,1);
}
<div class="list">
  <div class="notifications">
    <h2>Tv Shows List</h2>
    <h4 class="number"><span class="badge badge-danger">Tv Shows Finished : {{ tvShowsFinished }} </span></h4>
    <h4 class="number"><span class="badge badge-primary">Tv Shows Waiting : {{ tvShowsWaiting }} </span></h4>
    <h4 class="number"><span class="badge badge-warning">Tv Shows Watching : {{ tvShowsWatching }} </span></h4>
  </div>
  <div class="mat-elevation-z8 content">
    <table mat-table [dataSource]="dataSource">
  
      <ng-container matColumnDef="poster">
        <th mat-header-cell *matHeaderCellDef> Poster</th>
        <td mat-cell *matCellDef="let element">
          <div *ngIf="element.poster_path; else noPoster">
            <img src="https://image.tmdb.org/t/p/w200/{{element.poster_path}}" alt="...">
          </div>
          <ng-template #noPoster>
            <img src="../../assets/not_found.jpg" alt="...">
          </ng-template>
        </td>
      </ng-container>
  
      <ng-container matColumnDef="title">
        <th mat-header-cell *matHeaderCellDef> Title </th>
        <td mat-cell *matCellDef="let element"> {{element.name}} </td>
      </ng-container>
  
      <ng-container matColumnDef="status">
        <th mat-header-cell *matHeaderCellDef> Status </th>
        <td mat-cell *matCellDef="let element" > 
          <div *ngIf="element.status === 0">
            <h5><span class="badge badge-secondary">Never finished</span></h5>
          </div>
          <div *ngIf="element.status === 1">
            <h5><span class="badge badge-danger">Finished</span></h5>
          </div>
          <div *ngIf="element.status === 2">
            <h5><span class="badge badge-primary">Waiting for season/episode</span></h5>
          </div>
          <div *ngIf="element.status === 3">
            <h5><span class="badge badge-warning">Watching</span></h5>
          </div>
        </td>
      </ng-container>
  
      <ng-container matColumnDef="date">
        <th mat-header-cell *matHeaderCellDef> Date </th>
        <td mat-cell *matCellDef="let element"> {{element.first_air_date | date: 'dd MMMM, y'}} </td>
      </ng-container>
  
      <ng-container matColumnDef="vote">
          <th mat-header-cell *matHeaderCellDef> Vote </th>
          <td mat-cell *matCellDef="let element"> {{element.vote_average}} </td>
        </ng-container>
  
      <ng-container matColumnDef="update">
          <th mat-header-cell *matHeaderCellDef> Update </th>
          <td mat-cell *matCellDef="let element">
            <button mat-icon-button class="update" (click)="update(element)">
              <mat-icon>create</mat-icon>
            </button>
          </td>
        </ng-container>
  
  
      <ng-container matColumnDef="remove">
        <th mat-header-cell *matHeaderCellDef> Remove </th>
        <td mat-cell *matCellDef="let element">
          <button mat-icon-button color="warn" (click)="remove(element)">
            <mat-icon>delete</mat-icon>
          </button>
        </td>
      </ng-container>
  
      <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr>
      <tr mat-row *matRowDef="let row; columns: displayedColumns;"></tr>
    </table>
  
    <mat-paginator [pageSizeOptions]="[25, 50, 100]" showFirstLastButtons></mat-paginator>
  </div>
</div>

如果您有解决此问题的想法,我会很高兴。

谢谢

【问题讨论】:

  • 添加顶部:50px:到通知..?
  • 当您的模态打开时,您是否会影响文档的overflow(到hidden?)?
  • 没有 chriskirknielsen。

标签: html css angular dialog position


【解决方案1】:

您可以尝试在加载通知时通过 javascript 发出margin-top: 10%;。 10% 只是一个假设,您可以将其更改为您认为合适的任何值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多