Element UI按钮组件:构建响应式用户界面的秘诀

news2024/9/20 0:51:47

Element UI按钮组件:构建响应式用户界面的秘诀

  • 一 . 创建按钮
  • 二 . 按钮的属性
    • 2.1 type 属性
    • 2.2 朴素按钮、圆角按钮
    • 2.3 size 属性
    • 2.4 圆形按钮
    • 2.5 加载状态
    • 2.6 禁用功能
    • 2.7 默认聚焦
  • 三 . 按钮组

在现代网页设计中,按钮不仅是用户交互的核心元素,也是提升用户体验的关键。Element UI 提供了一套丰富而强大的按钮组件,使得开发者能够轻松打造出既美观又功能丰富的用户界面。本文将带你学习Element UI按钮组件的基础用法以及相关特性。
在这里插入图片描述
ElementUI 专栏 : https://blog.csdn.net/m0_53117341/category_12780595.html

一 . 创建按钮

我们可以通过 标签来创建一个 Element 样式的普通按钮

<el-button>默认按钮</el-button>

那接下来 , 我们新创建一个组件 , 来具体看一下按钮组件的详细使用

然后在 <template></template> 标签中 , 创建一个 <div> 标签 , 在 <div> 标签中书写我们的样式

<template>
  <!-- 手动创建一个 div 标签 -->
  <div>
    <!-- 在这里书写样式 -->
    <h1>按钮的详细使用</h1>
    <!-- 创建一个普通的按钮 -->
    <el-button>普通按钮</el-button>
  </div>
</template>

<script>
export default {}
</script>

<style scoped>

</style>

然后我们需要将这个组件注册到 Vue 中 , 打开 router 目录下的 index.js , 将我们的组件信息注册进去

import Vue from 'vue'
import Router from 'vue-router'
import HelloWorld from '@/components/HelloWorld'
import Button from '@/components/Button'
import ButtonDetail from '@/components/ButtonDetail'

Vue.use(Router)

export default new Router({
  routes: [
    { path: '/', name: 'HelloWorld', component: HelloWorld },
    { path: '/button', name: 'Button', component: Button },
    { path: '/buttondetail', name: 'ButtonDetail', component: ButtonDetail },
  ]
})

接下来 , 我们在 App.vue 主页中 , 添加一个 a 标签 , 跳转到 ButtonDetail 组件

<template>
  <div id="app">
    <!-- URL 必须是 #/ 开头 -->
    <a href="#/buttondetail">点我学习按钮的具体用法</a>

    <!-- Vue 的路由 -->
    <router-view/>
  </div>
</template>

<script>
export default {
  name: 'App'
}
</script>

<style>
#app {
  font-family: 'Avenir', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>

此时刷新页面

小结 :

日后使用 ElementUI 的相关组件时 , 需要注意的是所有组件都是 el-组件名称 开头的 .

二 . 按钮的属性

https://element.eleme.cn/#/zh-CN/component/button

我们可以看到 , el-button 提供了许多属性

我们重点关注一些重要的属性

2.1 type 属性

我们可以通过 type 属性来去指定具体的按钮属性 (样式)

比如 : 我们可以设置成主要按钮

<el-button type="primary">主要按钮</el-button>

具体代码如下 :

<template>
  <!-- 手动创建一个 div 标签 -->
  <div>
    <h1>使用按钮的属性</h1>
    <el-button type="primary">蓝色按钮</el-button>
    <el-button type="success">绿色按钮</el-button>
    <el-button type="info">灰色按钮</el-button>
    <el-button type="warning">橙色按钮</el-button>
    <el-button type="danger">红色按钮</el-button>
  </div>
</template>

<script>
export default {}
</script>

<style scoped>

</style>

要注意的是 , 在 ElementUI 中 , 所有组件的属性全部写在了组件标签中

<!-- type="primary" 写在了 el-button 标签中 -->
<el-button type="primary">主要按钮</el-button>
<!-- plain="true" 写在了 el-button 标签中 -->
<el-button type="primary" plain="true">主要按钮</el-button>
<!-- round 写在了 el-button 标签中 -->
<el-button type="info" round>信息按钮</el-button>

其中 , 我们如果在标签内声明了相关属性 , 默认就为 true , 无需手动指定 true / false

2.2 朴素按钮、圆角按钮

我们可以在属性中继续设置其他属性 , 比如设置当前标签为朴素按钮、是否为圆角按钮

如果某个属性默认值为 false , 我们直接指定对应属性即可 , 无需指定 true / false

<template>
  <!-- 手动创建一个 div 标签 -->
  <div>
    <h1>使用按钮的属性</h1>
    <!-- 通过 plain 属性设置为朴素按钮 -->
    <el-button type="primary" plain>蓝色按钮</el-button>
    <!-- 通过 round 属性设置为圆角按钮 -->
    <el-button type="success" round>绿色按钮</el-button>
  </div>
</template>

<script>
export default {}
</script>

<style scoped>

</style>

2.3 size 属性

那我们还可以指定 size 属性 , 可以设置三个大小 : medium、small、mini

<template>
  <!-- 手动创建一个 div 标签 -->
  <div>
    <h1>使用按钮的属性</h1>
    <!-- size 属性可以设置按钮大小, 分为 medium、small、mini -->
    <el-button type="primary" size="mini">蓝色按钮</el-button>
    <el-button type="success" size="small">绿色按钮</el-button>
    <el-button type="info" size="medium">灰色按钮</el-button>
  </div>
</template>

<script>
export default {}
</script>

<style scoped>

</style>

2.4 圆形按钮

我们可以使用 circle 属性来设置按钮是否为圆形按钮

我们使用圆形按钮 , 一般需要搭配图标属性来使用的

那我们就可以从 ElementUI 中提供给我们的一系列图标中选择一个我们喜欢的

https://element.eleme.cn/#/zh-CN/component/icon

<template>
  <!-- 手动创建一个 div 标签 -->
  <div>
    <!-- 通过 icon 属性设置圆形按钮图标样式 -->
    <el-button type="primary" circle icon="el-icon-loading"></el-button>
  </div>
</template>

<script>
export default {}
</script>

<style scoped>

</style>

2.5 加载状态

通过 loading 属性设置当前按钮出现加载动画

<template>
  <!-- 手动创建一个 div 标签 -->
  <div>
    <!-- 通过 loading 属性设置当前按钮出现加载动画 -->
    <el-button type="primary" loading>加载按钮</el-button>
  </div>
</template>

<script>
export default {}
</script>

<style scoped>

</style>

2.6 禁用功能

如果我们不想让用户点击按钮的话 , 就可以通过 disabled 属性设置成禁用 , 这样用户就不可选中

<template>
  <!-- 手动创建一个 div 标签 -->
  <div>
    <!-- 通过 disabled 属性设置当前按钮不可选中 -->
    <el-button type="info" disabled>不可选中</el-button>
  </div>
</template>

<script>
export default {}
</script>

<style scoped>

</style>

此时 , 按钮就不可以被选中了

2.7 默认聚焦

默认聚焦指的是鼠标移动到按钮附近 , 就会自动选中当前按钮

<template>
  <!-- 手动创建一个 div 标签 -->
  <div>
    <!-- 通过 autofocus 属性设置当前按钮自动选中 -->
    <el-button type="primary" autofocus>自动选中</el-button>
  </div>
</template>

<script>
export default {}
</script>

<style scoped>

</style>

那其实这个属性比较难看出来效果

三 . 按钮组

我们可以将多个按钮作为组连接起来 , 这样样式就变成了两个按钮相连的效果

我们使用 标签来嵌套多个按钮 , 形成按钮组

<template>
  <!-- 手动创建一个 div 标签 -->
  <div>
    <h1>按钮组的使用</h1>
    <!-- 使用 el-button-group 标签创建按钮组 -->
    <el-button-group>
      <el-button>上一页</el-button>
      <el-button>下一页</el-button>
    </el-button-group>
  </div>
</template>

<script>
export default {}
</script>

<style scoped>

</style>

我们可以查看一下效果

我们还可以设置成跟这个一样的效果 , 我们只需要设置成 primary 样式的按钮 , 然后添加 <、> 箭头图标即可

<template>
  <!-- 手动创建一个 div 标签 -->
  <div>
    <h1>按钮组的使用</h1>
    <!-- 使用 el-button-group 标签创建按钮组 -->
    <el-button-group>
      <el-button type="primary" icon="el-icon-back">上一页</el-button>
      <el-button type="primary" icon="el-icon-right">下一页</el-button>
    </el-button-group>
  </div>
</template>

<script>
export default {}
</script>

<style scoped>

</style>


对 ElementUI 中的按钮组件有多少了解了 ?
如果对你有帮助的话 , 还请一键三连~
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2129520.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

即插即用篇 | YOLOv10 引入组装式Transformer模块AssembleFormer | arXiv 2024

本改进已同步到YOLO-Magic框架! 摘要—早期检测和准确诊断可以预测恶性疾病转化的风险,从而增加有效治疗的可能性。轻微的症状和小范围的感染区域是一种不祥的警告,是疾病早期诊断的重中之重。深度学习算法,如卷积神经网络(CNNs),已被用于分割自然或医学对象,显示出有希…

保姆级离线+windows环境+大模型前端UI安装(二)

看到很多文章采用docker在windows环境安装python或者是linux环境再装webui的&#xff0c;感觉比较麻烦&#xff0c;不够简洁&#xff0c;本文采用nodejs&#xff0c;来作为客户端引擎。 这篇只讲客户端安装&#xff0c;需要安装后端大模型及其运行的可以参考第一篇&#xff1a…

Vue入门学习笔记-表单

可以使用v-model 指令在表单控件元素上创建双向数据绑定。 引言&#xff1a; Vue采用了MVVM&#xff08;Model-View-ViewModel&#xff09;架构模式&#xff0c;通过指令可以快速实现数据和视图的双向绑定 修改视图层时&#xff0c;模型层也会改变&#xff1b;修改模型层&#…

【软考】程序设计语言基础

【软考】程序设计语言基础 一.程序设计语言基础概念 计算机要通过程序或指令来控制才能完成各种任务。程序设计语言&#xff08;计算机语言&#xff09;&#xff1a;人与机器交换信息的语言。 1.程序设计语言 计算机语言大致分为机器语言、汇编语言和高级语言三种。机器语言…

迁移学习:让你的深度学习模型更聪明的秘密武器

在深度学习领域&#xff0c;训练一个高效的模型通常需要大量的标注数据和计算资源。然而&#xff0c;获取这样的数据并不总是容易。幸运的是&#xff0c;迁移学习为我们提供了一种解决方案&#xff0c;它允许我们利用已有模型的知识&#xff0c;从而在新任务上获得更好的性能。…

被要求撤回Blackwell?一家初创企业称英伟达侵权自家技术,忍无可忍!英伟达和伙伴微软被齐齐告上法庭,赔偿或高达数十亿!

刚刚&#xff0c;一家初创公司居然把巨头英伟达和微软一起告了&#xff01; 名为Xockets的初创公司在诉讼中称&#xff0c;英伟达和微软公司窃取了其DPU技术&#xff0c;用以开发AI产品&#xff0c;并相互串通以压低其技术的价格&#xff0c;是名副其实的垄断行为&#xff01;…

C语言16--宏定义和关键字

预处理 在C语言程序源码中&#xff0c;凡是以井号&#xff08;#&#xff09;开头的语句被称为预处理语句&#xff0c;这些语句严格意义上并不属于C语言语法的范畴&#xff0c;它们在编译的阶段统一由所谓预处理器&#xff08;cc1&#xff09;来处理。所谓预处理&#xff0c;顾名…

有没有视频加字幕免费软件?值得收藏的10款字幕编辑软件推荐!

随着视频成为我们生活中不可或缺的一部分&#xff0c;它已然成为信息传播的重要方式。然而&#xff0c;仅有精彩的内容还不足以吸引全球观众&#xff0c;字幕的加入显得尤为重要。不仅能帮助不同语言的用户理解视频内容&#xff0c;还能提升视频的互动性。许多视频制作爱好者开…

Linux 防火墙:iptables (一)

文章目录 iptables 概述netfilter 与 iptables 的关系 四表五链规则表规则链数据包处理的优先顺序与规则链匹配顺序规则表的优先顺序规则链的匹配顺序规则链内的匹配顺序匹配流程示意图 安装与格式iptables 的安装iptables 防火墙的配置方法iptables 命令行配置方法常用的控制类…

20道经典自动化测试面试题【建议收藏】

概述 觉得自动化测试很难&#xff1f; 是的&#xff0c;它确实不简单。但是学会它&#xff0c;工资高啊&#xff01; 担心面试的时候被问到自动化测试&#xff1f; 嗯&#xff0c;你担心的没错&#xff01;确实会被经常问到&#xff01; 现在应聘软件测试工程师的岗位&…

圆锥曲线练习

设 A ( x 1 , y 1 ) , B ( x 2 , y 2 ) A\left( x_{1}, y_{1} \right), B\left( x_{2}, y_{2} \right) A(x1​,y1​),B(x2​,y2​) l : y k ( x 2 ) l: y k\left( x2 \right) l:yk(x2) 显然 y 0 y0 y0符合题意 当 k ≠ 0 k\neq 0 k0 联立 l l l和 C C C ( k 2 1 2 ) x…

基于SpringBoot+Vue+MySQL的校园周边美食探索及分享平台

系统背景 在当今数字化时代&#xff0c;校园生活正日益融入信息技术的浪潮之中&#xff0c;学生们对于便捷、高效且富有趣味性的生活方式有着越来越高的追求。特别是在饮食文化方面&#xff0c;随着校园周边餐饮业态的日益丰富&#xff0c;学生们渴望一个能够集美食探索、分享与…

SpringBoot入门(黑马)

1. SpringBootWeb入门开发 需求&#xff1a;使用SpringBoot 开发一个web 应用&#xff0c;浏览器发起请求 /hello 后&#xff0c;给浏览器返回字符串"Hello World~"。 步骤&#xff1a; 1. 创建springBoot工程&#xff0c;并勾选web开发相关依赖。 2. 定义 HelloCo…

iOS——strong和copy的底层实现

copy和strong的区别 有如下代码&#xff1a; #import "Person.h"interface Person ()property (nonatomic, strong) NSString *strStrong; property (nonatomic, copy) NSString *strCopy;endimplementation Person- (void) go {NSMutableString *newStr [NSMutab…

【前端】 flex布局详解

Flex布局开启&#xff0c;在编写之前&#xff0c;我们要先搞清楚一个问题&#xff0c;就是你要让谁开启flex布局&#xff1f;我们要开启flex布局的最终目的一定是为了让某几个元素进行规范化布局&#xff0c;那如果你单独写在某个元素身上&#xff0c;那它的兄弟元素也不知道自…

【FPGA XDMA AXI Bridge 模式】PCIe:BARs 和 AXI:BARs 含义解析

XDMA IP核两种模式 Xilinx的 DMA/Bridge Subsystem for PCI Express IP核中&#xff0c;支持普通的XDMA模式&#xff0c;但是这种模式只允许主机端发起PCIe 读写请求&#xff0c;FPGA内部无法主动发起读写请求&#xff0c;也即FPGA无法主动读写HOST的内存。 而该IP核的另一种…

超分论文ESPCN解读

论文地址&#xff1a;Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network 相关知识点总结&#xff1a; 许多SR技术的一个关键假设是&#xff0c;大部分高频数据是冗余的&#xff0c;因此可以从低频分量中准确重建…

IIC时序(通俗易懂版,嘎嘎简单)

介绍 简述&#xff1a;IIC总线就是一个两根线的规则&#xff08;半双工&#xff09;&#xff0c;规定通信双方如何传送数据&#xff0c;至于传送数据&#xff0c;无非就是主机给从机发送数据&#xff0c;或者从机给主机发送数据&#xff0c;其中加了一点发过去的数据有没有回应…

佰朔资本:大宗交易是什么?出现大宗交易意味着什么?

大宗生意&#xff0c;又叫作大宗生意&#xff0c;是指抵达规则的最低限额的证券单笔生意申报&#xff0c;生意两边经过协议达到共同并经生意所招认成交的证券生意。 出现大宗生意&#xff0c;说明该股票的整体体现弱于商场均匀体现&#xff0c;且主力正在减仓或许出货。大宗生…

charles使用ssl证书抓包https请求失败解决方案

前提 手机必须有root权限&#xff0c;并且是使用Magisk&#xff08;面具&#xff09;进行root; ssl证书安装 安卓7.0以下的手机&#xff0c;ssl证书是直接安装到了‘系统证书’里&#xff0c;可以直接抓取https请求&#xff0c;但是目前的手机大部分都是7.0以上的&#xff1…