【element优化经验】el-dialog修改title样式

目录

前言

解决之路

1.把默认的×这个图标隐藏,官方的api有这个属性:showClose值设置false.

2.title插槽定制:左边定制标题,右边定制按钮区域。

3.背景颜色修改:默认title是有padding的需要把它重写调,然后加上背景颜色。

总结

​编辑

以上就是今天的分享,欢迎关注我,点赞评论!~


前言

近日,做需求遇到UI要求改造弹框的样式,默认的样式标题+关闭的X无法满足要求。

UI设计的是:

和产品和设计师经过激烈的讨论

&……#@@¥……*()%……%。。。

产品说这样内容多还要往下滚动才能看到按钮呀,

点击X和点击取消功能重复了呀,

设计师说这样美观好看呀…

…@%&^^&*&*(*(*()*)@@#$*()%&*…………

无果,她们就是要这样的按钮在上方的。所以,得解决呀。

解决之路

1.把默认的×这个图标隐藏,官方的api有这个属性:showClose值设置false.

2.title插槽定制:左边定制标题,右边定制按钮区域。

<el-dialog :closeOnClickModal="$store.state.isFALSE" :title="$t('pageinfo.auditDetail')" :showClose="false" :visible.sync="dialogShow" left :before-close="dialogClose" width="650px" class="zkDialog">

		<template slot="title">
			<div class='zkTitle'>
				<div class="title-name">{{$t('pageinfo.auditDetail')}}</div>
				<el-button type="primary" @click="dialogClose">{{$t('CommonBtn.Close')}}</el-button>
			</div>
		</template>

<div>……</div>    

</el-dialog>

3.背景颜色修改:默认title是有padding的需要把它重写调,然后加上背景颜色。

/*修改dialog默认样式: ①dialog添加class名zkDialog,②取消显示×关闭,③新增slot="title" */
	.zkDialog{
		/deep/ .el-dialog__header{
			padding: 0 !important;
		}
		.zkTitle{
			background: #eee;
			border-radius: 4px;
			padding: 20px;
			width: 100%;
			box-sizing: border-box;
			display: flex;
			flex-direction: row;
			align-items: center;
			justify-content: space-between;

			.title-name{
				font-size: 24px;
				color: #000000;
			}
		}
	}

总结

本次,我们通过slot重写title,并且通过样式修改了element-ui中dialog中的默认样式,举一反三。以后各种各样的弹窗样式都可以定制了。

以上就是今天的分享,欢迎关注我,点赞评论!~

  • 18
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
如果您想要自定义 Element UI 的 `el-dialog` 样式,有以下两种方式: 1. 使用 `scoped` CSS 在 `el-dialog` 组件上添加 `scoped` 属性,然后使用 CSS 来修改样式。例如: ```html <template> <el-dialog title="Dialog Title" :visible.sync="dialogVisible" :close-on-click-modal="false" :show-close="false" scoped > <p>Dialog Content</p> </el-dialog> </template> <style scoped> .el-dialog__header { background-color: #f0f0f0; color: #333; } .el-dialog__body { padding: 20px; } </style> ``` 在上面的例子中,我们修改了 `el-dialog` 头部的背景色和字体颜色,以及内容区域的内边距。 2. 使用全局 CSS 在全局 CSS 文件中添加样式,来覆盖默认样式。例如: ```css .el-dialog__header { background-color: #f0f0f0; color: #333; } .el-dialog__body { padding: 20px; } ``` 在这种方式下,所有使用 `el-dialog` 组件的地方都会应用这些样式。 需要注意的是,如果您使用了 `scoped` CSS,那么您需要在样式中使用 `/deep/` 或者 `>>>` 来穿透组件的作用域。例如: ```html <template> <el-dialog title="Dialog Title" :visible.sync="dialogVisible" :close-on-click-modal="false" :show-close="false" scoped > <p>Dialog Content</p> </el-dialog> </template> <style scoped> .el-dialog /deep/ .el-dialog__header { background-color: #f0f0f0; color: #333; } .el-dialog /deep/ .el-dialog__body { padding: 20px; } </style> ``` 在上面的例子中,我们使用了 `/deep/` 来穿透 `el-dialog` 的作用域,来修改样式
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值