10 个罕见的 HTML 标签,几乎无人使用 - <dialog>、<bdo>等等

HTML 的内容远不止 <div> <a><p> 。如此多更复杂、更强大的标签,你可能从未使用过。具有从交互式图像到复杂的 UI 组件的有趣功能。

1. <progress><meter>

82c6d712e763f8844ed5fec2226c42a2.png

09b2769a2753e8bc2dfca6b9d32335f5.gif

但是,接下来就是 meter -- 也被称为 progress 在横行:

eb1f367bdae1b9b8fb1da6ebac1422e1.png

ef65eec26169ce3248e13febfc29adfd.gif

2. <dfn>

dfn -- 用于我们将在页面中定义的任何内容:

f583db4723742d20c5229b6aaa5a1355.png

3. <dialog>

原生 HTML 对话框!

2b5de73425ca157f9007d9f3348d1d57.png

2bf4446e50d5b3aaf2da8eac2af1e39b.png

4. <map><area>

7b52428454bb27a5e9a33014bf201c74.png

们称这样的可点击图片为图像地图。

6197b020231258e76348560d5086bed5.gif

5. <bdo>

超级神秘的缩写在这里,它是做什么的?

182c710279be591e19a51e0e34dc2d74.png

4831221cf80506eaca35bb57e215c310.png

6. <base>

d8f041d36dfa373b90391aebef5eb0e6.png

<a> 使用页面的域名来获取他们将导航您的完整 URL:

c2f100391b26d7f1f66a29947bce2def.gif

但是,当你在 HTML 中创建一个基础的 <base> 会发生什么?

dfdf2bd21300c28c1aee233c71339095.png

现在他们都使用 <base> 的 href 中的硬编码值来获取完整的 URL:

5bd70631bafc2711224c0ce8827c733b.gif

像 Angular 和 Flutter Web 这样的框架也在使用它:

72c1554c5c95195f704c475a41d43a46.png

7. <time>

对于日期和时间:

b27ef0a48ab4d73c6dc91ae0b71bbc87.png

7666b735b5e429b6845d6ae409dfc866.png

8. <hgroup>

<hgroup> 表示标题标签和下面的一些内容是相关的

ad1457eeb640778ea4158c4993c4ffb2.png

658021498fb29b3c860a638e854dda1d.png

9. <kbd>

代表键盘输入:

f6ca665e6518a35f96e2b8e9fc441ad9.png

ab1be2c604a2a49c06ed707430c565ee.png

10. <cite>

表示书籍、歌曲、电影或其他创作作品的标题:

09e2d3548255e7ae77f6305ccdf32d80.png

所以,这些是 HTML 中最不为人知和使用的 10 个标签。尽管使用率低,但在各种情况下都非常有用。

最后:

CSS技巧与案例详解

vue2与vue3技巧合集

VueUse源码解读

<think>好的,我现在需要帮助用户解决关于使用Element UI的el-dialog组件的问题。用户遇到了一个Vue警告,提示未知的自定义元素<el-dialog>,并且他们想要查看使用该组件的代码示例和用法说明。 首先,我需要分析用户提供的引用内容。引用[1]提到用户遇到了组件未正确注册的错误,这通常是因为没有在Vue中注册Element UI组件。引用[2]展示了如何在el-dialog中使用插槽添加标题按钮,引用[3]讨论了样式调整,引用[4]则提到了版本兼容性问题,可能需要升级Vue或Element UI版本。 用户当前的问题是如何正确使用el-dialog,包括注册组件和示例代码。我需要确保回答涵盖以下几个方面: 1. **正确注册Element UI组件**:用户可能没有全局注册Element UI,或者没有正确导入el-dialog。需要说明如何通过Vue.use(ElementUI)来全局注册,或者按需导入。 2. **基本用法示例**:提供一个简单的el-dialog代码示例,展示visible.sync控制显示隐藏,以及必要的结构。 3. **插槽使用**:根据引用[2],用户可能需要如何在标题栏添加自定义内容,比如导出按钮,需要展示slot="title"的用法。 4. **样式调整**:引用[3]中提到垂直居中问题,可能需要指导用户如何通过自定义CSS来覆盖默认样式,特别是使用::v-deep来穿透作用域样式。 5. **版本兼容性**:引用[4]指出可能需要升级Vue或Element UI版本,如果用户遇到兼容性问题,可能需要检查版本是否匹配。 接下来,我需要组织这些信息,确保结构清晰,步骤明确。首先解决组件注册的问题,然后给出基本示例,再展示高级用法如插槽和样式调整。最后提醒版本注意事项。 需要确保代码示例正确,包括模板部分和脚本部分的导入与注册。同时,注意用户可能是在已有项目中添加el-dialog,所以需要强调注册步骤的重要性,避免出现Unknown custom element的错误。 另外,用户可能是在遇到错误后寻找解决方案,所以需要明确说明每个步骤的作用,比如全局注册与按需导入的区别,以及如何根据项目需求选择合适的方式。 最后,相关问题部分需要考虑用户可能进一步的问题,比如样式定制、嵌套对话框、关闭行为控制等,这些都可以作为相关问题提出,帮助用户深入理解组件使用。</think>根据提供的引用内容和代码实现需求,以下是Element UI中`<el-dialog>`组件的使用详解和代码示例: ### 一、基础用法 ```html <template> <!-- 触发按钮 --> <el-button @click="dialogVisible = true">打开弹窗</el-button> <!-- 对话框组件 --> <el-dialog title="提示" :visible.sync="dialogVisible" width="30%" :before-close="handleClose"> <span>这里是弹窗内容</span> <span slot="footer" class="dialog-footer"> <el-button @click="dialogVisible = false">取 消</el-button> <el-button type="primary" @click="dialogVisible = false">确 定</el-button> </span> </el-dialog> </template> <script> export default { data() { return { dialogVisible: false } }, methods: { handleClose(done) { this.$confirm('确认关闭?') .then(_ => done()) .catch(_ => {}) } } } </script> ``` ### 二、核心功能实现要点 1. **组件注册**(解决引用[1]的报错): ```javascript // 全局注册(main.js) import ElementUI from 'element-ui'; Vue.use(ElementUI); // 或按需引入 import { Dialog } from 'element-ui'; Vue.component('el-dialog', Dialog); ``` 2. **自定义标题栏**(引用[2]实现): ```html <el-dialog :visible.sync="dialogVisible"> <div slot="title" class="custom-header"> <span>自定义标题</span> <el-button type="text" icon="el-icon-download">导出</el-button> </div> <!-- 内容 --> </el-dialog> <style> .custom-header { display: flex; justify-content: space-between; align-items: center; } </style> ``` 3. **垂直居中样式**(引用[3]方案): ```css ::v-deep .el-dialog { margin-top: 0 !important; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } ``` ### 三、进阶功能实现 ```html <el-dialog :visible.sync="dialogVisible" fullscreen :close-on-click-modal="false" :show-close="false" custom-class="custom-dialog"> <!-- 嵌套内容 --> <el-tabs v-model="activeTab"> <el-tab-pane label="选项卡1">内容1</el-tab-pane> <el-tab-pane label="选项卡2">内容2</el-tab-pane> </el-tabs> <template v-slot:footer> <el-button @click="handleSubmit" :loading="loading">提交</el-button> </template> </el-dialog> ``` ### 四、版本兼容性建议(引用[4]) 1. 确保Element UI与Vue版本匹配: - Vue 2.6.x 对应 Element UI 2.15.x - Vue 2.7.x 对应 Element UI 2.16.x 2. 推荐安装组合: ```bash npm install vue@2.7.14 element-ui@2.15.14 ``` ### 五、最佳实践建议 1. **状态管理**:当使用Vuex时,建议通过`mapState`管理对话框状态 2. **性能优化**:对于复杂弹窗内容,使用`v-if`代替`v-show`控制渲染 3. **全局配置**:在入口文件设置默认尺寸 ```javascript // main.js import { Dialog } from 'element-ui' Dialog.props.width.default = '600px' ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值