首页 > 解决方案 > 表格宽度 100% 超过父 mat-nav-list

问题描述

我有以下代码在 a 中呈现表格mat-nav-list

<mat-nav-list>
    <table>
        <tr>Node Information</tr>
        <tr>
            <td>Name</td>
            <td *ngIf="activeNode">{{activeNode.Name}}</td>
          </tr>
        <tr>
            <td>AutomationId</td>
            <td *ngIf="activeNode">{{activeNode.AutomationId}}</td>
        </tr>
        <tr>
          <td>ClassName</td>
          <td *ngIf="activeNode">{{activeNode.ClassName}}</td>
        </tr>
        <tr>
            <td>ControlType</td>
            <td *ngIf="activeNode">{{activeNode.ControlType}}</td>
        </tr>
      </table>
    <mat-accordion>
        <app-tree-display  [nodeElements]="nodeElements" (clickedNodeCallback)="clickedNode($event[0])"></app-tree-display>
    </mat-accordion>
</mat-nav-list>

看起来像这样:

在此处输入图像描述

我希望表格占据 mat-nav-list 宽度的 100%,但是当我将宽度设置为 100% 时,它会像这样占据整个屏幕:

在此处输入图像描述

如何限制宽度以匹配父元素?

标签: htmlcssangularangular-material

解决方案


如果要编辑 mat-nav-list 的宽度,则必须在边框样式下方添加所需的自定义宽度

    table{
    width:100%;
    }
    mat-nav-list{
    display:block;
    border:1px solid;
    /*width:600px;  this is an example*/
    }
    <mat-nav-list>
        <table>
            <tr>Node Information</tr>
            <tr>
                <td>Name</td>
                <td *ngIf="activeNode">{{activeNode.Name}}</td>
              </tr>
            <tr>
                <td>AutomationId</td>
                <td *ngIf="activeNode">{{activeNode.AutomationId}}</td>
            </tr>
            <tr>
              <td>ClassName</td>
              <td *ngIf="activeNode">{{activeNode.ClassName}}</td>
            </tr>
            <tr>
                <td>ControlType</td>
                <td *ngIf="activeNode">{{activeNode.ControlType}}</td>
            </tr>
          </table>
        <mat-accordion>
            <app-tree-display  [nodeElements]="nodeElements" (clickedNodeCallback)="clickedNode($event[0])"></app-tree-display>
        </mat-accordion>
    </mat-nav-list>

width:auto (100%) 不指定样式中的宽度

宽度:600px


推荐阅读