vue如何隨心所欲調整el-dialog中body的樣式

vue調整el-dialog中body樣式

<el-dialog
      :visible.sync="dialogVisible"
      width="30%"
      class="dialogClass"//設置彈框樣式
      :showClose="showClo"
      :close-on-click-modal="false"
    >
      <div slot="title">
        <b>系統提示</b>
      </div>
      <el-row>
        <el-col :span="2">
          <svg-icon icon-class="warning" style="height:3em;weight:8em" class="iconClass" />
        </el-col>
        <el-col :span="22" style="padding-top:12px">
          <span style="font-size:16px;">
            當前設備編碼與設備型號不符,請檢查!
          </span>
        </el-col>
      </el-row>
      <span slot="footer" class="dialog-footer">
        <el-button style="margin-left:7%"
          type="primary"
          plain
          @click="dialogVisible = false;"
        >確認</el-button>
      </span>
    </el-dialog>
.dialogClass .el-dialog__body {
  padding: 20px;
  padding-top: 0px;
  padding-bottom: 0px;
  margin-left: 20px;
  color: #606266;
  font-size: 14px;
}
.dialogClass .el-dialog__footer {
  text-align: right;
}
/*註意此樣式不可以放在scope屬性下面,否則樣式不生效*/

自定義el-dialog的樣式

1、默認dialog的樣式

居中對其的狀態是這樣的

2、項目需求是這樣我們需要自定義的樣式

上下邊框,以及圓角:

3、代碼修改屬性部分

在項目中直接修改不生效,可以加上deep屬性來穿透改變,因為vue項目中style樣式中都有scoped的,所以也不會影響其他頁面的內容

// 修改彈框邊框圓角
  /deep/.el-dialog.el-dialog--center {
    border-radius: 8px;
  }
 
  // 去掉彈框內容的默認padding值 
  /deep/.el-dialog--center .el-dialog__body {
    padding: 0px;
    text-align: center;
  }

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。

推薦閱讀: