【Vue】样式

Vue布局秘籍:用这些技巧打造炫酷页面! el-container、el-header、el-aside和el-footer是Element UI框架中的布局组件,有着以下关系:- el-container:容器组件,是整个布局的最外层容器,包含了页面的整体布局。- el-header:头部组件,位于容器组件的顶部,通常用于放置导航栏、logo等。- el-aside:侧边栏组件,放置在容器组件的左侧或右侧,用于放置边栏菜单、快捷导航等。- el-footer:底部组件,位于容器组件的底部,通常用于放置页脚信息、版权声明等。 阅读详情

目录

一、弹出框的样式

二、子路由显示,点击父路由和子路由高亮的样式

三、设置标签页类似内边距的样式

四、获取元素在屏幕中的距离(位置属性)

1、返回元素的大小以及相对于视口的位置 

2、 元素偏移量offset、元素可视区client、元素滚动scroll

五、去掉表格全选多选框


修改element的样式的时候style标签不能加上scoped,
为了防止修改的样式影响到别的页面,建议在当前页面加一个id,修改时带上id,或者在样式前面加上 /deep/ ,控制修改的权限范围

一、弹出框的样式

el-popover生成的div不在当前组件之内,甚至不在App.vue组件的div内,他和App.vue组件的div平级,所以需要设置全局style。

页面内有多个Popper的,可以使用自定义popper-class

<style lang="scss">
.el-popover {
  padding: 0px;
  .el-table th {
    background-color: #dff2ff;
  }
}
</style>

二、子路由显示,点击父路由和子路由高亮的样式

elementUI 导航栏点击之后改变背景色,背景色悬停

(在sidebar.css的.sidebar-container {}中写)

.sidebar-container {
    // 一级菜单背景色
    .el-menu-item.is-active {
      color: #fff !important;
      background: #4a6cfa !important;
    }

    // .el-submenu__title.is-active {
    //   color: #fff !important;
    //   background: #4a6cfa !important;
    // }
    // 二级菜单背景色
    .el-submenu .el-menu-item.is-active {
      background: #4a6cfa !important;
    }
    // .is-active {
    //   background: #4a6cfa !important;
    // }
    // 显示二级菜单页面时,一级菜单的背景色(二级菜单显示在菜单栏上才有效)
    .is-active>.el-submenu__title {
      color: #fff !important;
      background: #4a6cfa !important;
    }
}

三、设置标签页类似内边距的样式

elementUI的标签页,样式设置可以使用:before来实现

.el-tabs__item.is-active:before {
    background: #2e3192;
    content: 'border';
    width: 200px;
    position: absolute;
    top: -40px;
    left: 0px;
  }

四、获取元素在屏幕中的距离(位置属性)

1、返回元素的大小以及相对于视口的位置 

语法:obj.getBoundingClientRect()  

<div ref="bt" :style="{ height: bottomheight + 'px',}"></div>


rectObject = this.$refs.bt.getBoundingClientRect();

rectObject.top:元素上边到视窗上边的距离;

rectObject.right:元素右边到视窗左边的距离;

rectObject.bottom:元素下边到视窗上边的距离;

rectObject.left:元素左边到视窗左边的距离;

rectObject.width:是元素自身的宽

rectObject.height是元素自身的高

2、 元素偏移量offset、元素可视区client、元素滚动scroll

offest偏移量(只读属性):是指在文档中占用所有显示的宽度,包括边框内边距内容、滚动条,但是不包括overflow的部分 

offsetParent 返回该元素的祖先元素中、离自己最近的、有定位的元素即返回该元素的最近的有定位的父级元素。如果父级元素都没有定位则返回body。
offsetLeft返回他和他父亲之间左边留出的距离。
offsetTop返回他和他父亲之间上边留的距离。
offsetWidth返回该元素自身的宽度,包括border和padding和内容区域的宽度相加即可
offsetHeight返回该元素自身的高度,包括border和padding和内容区域的高度相加即可

client可视区:是指元素本身能看见的内容,使用此属性可以动态的获取各个元素的边框大小、元素本身的大小等。包括padding、内容,其中它不包括border、滚动条以及overflow被折叠起来的部分。

element.clientTop返回元素上边框大小。即上边框的厚度,一般它的值就是0,因为滚动条不会出现在顶部。
element.clientLeft 返回元素左边框大小。即左边框的厚度,一般它的值就是0,因为滚动条不会出现在左侧。
element.clientWidth

返回元素自身可见的宽度。返回的数值不带单位。

该元素自身可见的宽度 = 左右padding值 + 内容区宽度 clientWidth = [padding-left] + [width] + [padding-right]

element.clientHeight

返回该元素自身可见的高度。返回的数值不带单位。

该元素自身可见的高度 = 上下padding值 + 内容区高度 offsetHeight = [padding-top] + [height] + [padding-bottom]


scroll指滚动,我们是用scroll系列可以动态获得该元素的大小、滚动距离等。包括padding、内容、overflow隐藏的部分,但是不包括border、滚动条。

element.scrollTop返回被卷去的上侧距离。返回值不带单位。 用于获取或设置位于对象最顶端和窗口中可见内容的最顶端之间的距离。
element.scrollLeft返回被卷去的左侧距离。返回值不带单位。 用于获取或设置位于对象左边界和窗口中目前可见内容的最左端之间的距离。
element.scrollWidth

返回元素的滚动宽度,即元素的实际宽度。返回值不带单位

该元素的滚动宽度 = 左右padding值 + 内容区宽度 + overflow的宽度 scrollWidth = [padding-left] + [width] + [overflow] + [padding-right]

element.scrollHeight

返回元素的滚动高度,即元素的实际高度。返回值不带单位

该元素的滚动高度 = 上下padding值 + 内容区高度 + overflow的高度 scrollHeight = [padding-top] + [height] + [overflow] + [padding-bottom]

onscroll事件:当滚动条在滚动时会触发此事件

window.pageXOffset返回文档在窗口左上角水平方向滚动的像素。等价于 scrollX。 用于获取或设置当前页面相对于窗口显示区左上角的 X 位置。
window.pageYOffset返回文档在窗口左上角垂直方向滚动的像素。等价于 scrollXY。 用于获取或设置当前页面相对于窗口显示区左上角的 Y 位置。


 

五、下拉框的dropdown溢出屏幕

先在el-select上添加popper-class="select-dropdown"

<style lang="scss">
.select-dropdown {
  max-width: 83%;
}
.select-dropdown .el-select-dropdown__item {
  overflow: visible;
  display: block;
}
</style>

VUEJS项目实践五之Dialog弹出框MessageBox(超好看的bootstrap样式) 这次需要写一个弹出层dialog,有确认和取消按钮的那种。 先看下弹出层的效果吧~ 其实我是写成深黑透明底的,可能因为我在mac本上截的图,跟我在 windows里做出的效果不太一样,不过也是好看的。 一、src/components/messagebox下新建messagebox.js import messageBoxVue from './messageBox.vue' // 定义插件... 阅读详情

相关推荐

Vue页面样式控制 编程

通过上述方法,我们可以在Vue页面中灵活地控制元素的样式。无论是通过类绑定、样式绑定还是计算属性,我们都可以根据Vue实例中的数据来实现动态的样式控制。如果我们需要根据多个数据属性计算出样式属性的值,可以使用计算属性来实现。计算属性是在Vue实例中定义的带有缓存的属性。我们可以根据Vue实例中的数据来添加或移除特定的CSS类。在Vue中,我们可以使用多种方式来控制页面的样式。我们可以根据Vue实例中的数据来动态设置元素的样式属性。指令的对象中绑定样式属性,并使用Vue实例中的数据来动态改变这些属性的值。

2301_79326254的博客 120

Vue学习之样式汇总

Vue学习之样式汇总 一 二者左右排版 案例 说明:头部一左一右排版,内容一左一右两个排版,公告栏文字超过点点点显示 代码实现 说明: (1)头部实现一左一右排版需要使用一下两个样式 display: flex; justify-content: space-between; (2)内容区实现左右两个排版需要以下样式 display: flex; flex-wrap: wrap;//一行排列 justify-content: space-between; //左右排版 li { w

hcyxsh的博客 2165

Vue3 - Element Plus 隐藏去除 Popover 气泡卡片内边距,el-popover 气泡弹框组件去掉 padding 内边距(提供详细教程及示例代码,保证您成功去除)

vue3,elementplus组件库,popover气泡卡片,Popover弹出框,el-popover组件,vue3elementplus气泡弹框组件el-popover如何去除内边距,elementplus怎么隐藏Popover气泡卡片里面的padding内边距,vue3elementplus实现隐藏el-popover内边距padding,padding内边距如何隐藏删除,vue3elementplus前端框架中的popover弹出框的内边距padding去除隐藏详细教程,pop

🏆 前端领域优质创作者 5359

Vue样式设置的几种方式

1、直接使用class设置样式: 代码: 结果: 2、通过v-bind绑定class设置样式: (1)使用json形式: 代码: 结果: (2)使用数组形式 代码: 结果: 注意:通过第二种数组的方式,也可以通过三元表达式进行class的判断,此处不再赘述。 3、通过:style设置样式 代码: 结果: 注意::style绑定样式是,不能使用常规的css样式,如font-size,background-color等,如果用到此类样式,需要遵循驼峰命名法,即fontSize,bac

threelifeadv的博客 1万+

EGO_Plannerv2代码学习(一):栅格建图之V1 V2的区别

最近在尝试将高飞老师的集群规划器部署到真实无人机上跑一下,开这个新帖记录下学习过程中的问题和想法。

qq_41069236的博客 5743

GPS-SDR-SIM使用详解

GPS-SDR-SIM 是一款开源工具,能够生成 GPS 基带信号数据流,这些数据流可通过软件定义无线电(SDR)平台(如 ADALM-Pluto、bladeRF、HackRF、USRP 等)转换为射频(RF)信号。简单来说,它能模拟 GPS 卫星信号,帮助开发者或爱好者测试 GPS 接收设备的性能,而无需依赖真实的卫星信号。

qq_35621280的博客 1231

VueJS 之样式冲突与样式穿透

为了选择当前组件的子组件中的元素进行样式设置,先使用属性选择器选择自定义属性以指定当前组件(不同的组件 ,VueJS 为其分配的自定义属性 data-v-* 不同),再通过后代选择器选择当前组件的后代组件中的相应元素。深度选择器可以在保证不发生全局样式冲突的前提下,将父组件中的样式应用到子组件(准确来说应该是当前组件的所有后代组件)中。在使用深度选择器时,你的编辑器也许会在深度选择器下显示红色波浪线以提示开发者代码编写错误,请不要理会,深度选择器在 VueJS 中是合理的。元素中,就能够避免发生样式冲突。

两个月亮 2205

旅行青蛙破解汉化教程——蹭个热度

汉化破解版资源(无尽三叶草与点券): https://github.com/wisdombyzf/lxqw/blob/master/lxqw_zf.apk 截图: 破解方法: 工具: 1,APKIDE https://www.pd521.com/thread-818-1-2.html 2,dnspy https://down.52pojie.

github_38838414的博客 3779

vue设置isactive_vuejs选中当前样式active的实例

如下所示:名称1名称2名称3名称4{{item.text}}{{item.text}}{{item.text}}{{item.text}}vue js代码export default {data:function() {return{items: [{ text: '巴士' },{ text: '快车' },{ text: '专车' },{ text: '顺风车' },{ text: '出租车' ...

weixin_31897613的博客 1257

超详细 VMware Horizon 虚拟桌面VDI安装步骤

主要的目的是模拟生产环境中的共享存储。自动桌面相当于共享电脑,大家使用同一个虚拟机,对虚拟机的修改都放在用户的配置文件中,RDS桌面池相当于共享的服务器,可以多人同时连接到服务器上。1:之前已经建立好了NFS的存储,这部分配置好后,以后的虚拟机可以安装到NFS的存储中。2: 使用Composer发布系统可以解决SID,机器名冲突的问题,更重要的可以节约磁盘空间,发布的所有系统可以访问一块磁盘。26: 域选择我们之前建立的域,用户名我输入的是管理员,可以在AD域新建用户点击查找,我这里用的是管理员。

vv12345的博客 1万+

16、天文时间序列分类:基于人工神经网络的研究

本研究探讨了基于人工神经网络的天文时间序列分类方法,重点比较了MLP、LSTM和CNN等模型在BRITE和开普勒K2数据集上的表现。研究发现LSTM不适用于此类数据,而结合特征提取与PSO超参数优化的多层感知器(MLP)在开普勒K2数据上实现了98.55%的二分类准确率。通过精细的数据预处理和高置信度样本选择,显著提升了分类性能。研究成果为恒星变异性识别提供了高效工具,并对天文学与机器学习交叉领域具有重要参考价值。

pz8901234的博客 109

Vuejs005---使用 class 样式

使用 class 样式 使用 vuejs 控制样式,会使样式变化的操作更加的灵活 (1)class 样式的使用 案例 1:传递一个 class 样式的数组,通过 v-bind 做样式的绑定 该形式与之前的形式没有太大的区别 :class="[样式 1,样式 2]" 案例 2:通过三目(元)运算符操作以上数组 boolean?true 执行 :false 执行 案例 3:使用对象(json) 来表达以上三目(元)运算符的操作 {样式:flag} 案例 4:

rngigskt的博客 627

轨迹优化 | 基于ESDF的共轭梯度优化算法(附ROS C++/Python仿真)

共轭梯度法的核心原理是求解优化问题的共轭向量组作为优化方向,由于优化方向间彼此正交,故每次迭代只需沿着一个方向寻优而互不影响。本文设计基于ESDF的障碍约束、曲率约束和平滑约束,基于ROS C++和Python提供了共轭梯度法的轨迹优化实践案例

FRIGIDWINTER的博客 1万+

vue给指定class设置css样式_vuejs绑定class和style样式

绑定Html Class我们可以传给 v-bind:class 一个对象,以动态地切换 class。注意 v-bind:class 指令可以与普通的 class 特性共存:data: { isA: true, isB: false}渲染结果:你也可以直接绑定数据里的一个对象,结果与上面的一致:data: {classObject: {'class-a': true,'class-b': false...

weixin_39646412的博客 388

北斗导航 | 卡尔曼滤波与因子图优化对比(附图优化matlab代码)

- 历史数据利用:因子图通过滑动窗口保留历史状态,优化时联合多帧数据;卡尔曼滤波仅依赖当前和上一帧状态 。 - 迭代优化:因子图通过多次迭代逼近最优解,卡尔曼滤波仅单次更新 。 - 误差抑制:因子图的多次线性化可有效抑制非线性误差(如GNSS伪距观测的非线性) 。

尘世冰封的专栏 1291

Vek385评估板(二):板子联网 & memtester安装(LPDDR5X测试)

继上一篇文章:Vek385评估板(一):EDF成功烧录启动及一些问题。 本章完成最主要的两个功能:开发板联网+内存 memtester。因为我是做测试行业的,所以这两个是最想试的。内存测试,除了FPGA测,也可以系统级测,本次在versal上实现这个功能,主要是可以应急。在没有安卓、X86的情况下,可以使用本方案测试。 下一篇会继续做一些其他功能。

千歌叹尽执夏的博客 209

css vue 内联_VueJs Style 绑定内联样式 对象语法

v-bind:style 的对象语法十分直观——看着非常像 CSS,但其实是一个 JavaScript 对象。CSS 属性名可以用驼峰式 (camelCase) 或短横线分隔 (kebab-case,记得用引号括起来) 来命名:data: {activeColor: 'red',fontSize: 30}直接绑定到一个样式对象通常更好,这会让模板更清晰:data: {styleObject: {c...

weixin_39627481的博客 248

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

策略梯度与 REINFORCE 算法精讲:从数学推导到 PyTorch 实战(Datawhale easy-rl 第 4 章)

策略梯度(Policy Gradient,PG)是强化学习中直接对策略建模并优化的经典范式,也是 Actor-Critic、PPO、A3C 等一系列现代算法的理论基石。本篇以 Datawhale easy-rl(蘑菇书🍄)第 4 章为骨架,结合仓库内 [PolicyGradient.ipynb](https://link.gitcode.com/i/328aff5824bb28d29b1cc5a

gitblog_01094的博客 1023

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Vue使用样式

class <!-- <h1 class="red thin">这是一个很大很大的标题</h1> --> <!--第一种使用方式:直接传递数组--> <!--这里的class使用 -bind进行绑定--> <h1 :class="['red', 'thin']">这是一个很大很大的标题</h1> <!...

Burgess_Lee的博客 295

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

VueJS样式绑定之内联样式v-bind:style

转自:https://www.cnblogs.com/boonya/p/7092710.html

wangchaohpu的博客 1489

vuejs样式绑定

第一种:class的对象绑定,class引用的是一个对象,这个对象的属性显示不显示由变量决定 <style>   .activated{     color:red;   } </style> <div id='app'>   <div @click = 'handleClick' :class='{activated: i...

weixin_30807779的博客 198

【Vue3】Vue3的scoped样式不生效

Vue3的scoped样式不生效

此人太懒,没有任何简介 1379

VueJs之样式绑定

1.v-bind:class 绑定 2.v-bind:style直接设置样式 3.注意:当v-bind:style使用需要特定前缀的 CSS 属性时,如 transform ,Vue.js 会自动侦测并添加相应的前缀。 转载于:https://www.cnblogs.com/assistants/p/10302616.html...

weixin_30632883的博客 216

vuejs可爱动物卡片样式动画js特效

下载地址 vuejs可爱动物卡片样式动画特效,鼠标悬停的时候出现动物头像。 dd:

ICode联盟 531

AdminLTE 管理后台模板实战:从安装到定制一个响应式后台

AdminLTE 是一个基于 Bootstrap 5 的免费管理后台模板(admin dashboard template),它把后台系统最常用的骨架和组件都准备好了:顶栏、侧边菜单、内容区、卡片、表格、表单,从小屏手机到桌面大屏都能正常显示。如果你要做一个管理系统、数据看板或内部控制面板,又不想从零写布局和样式,可以先看这个开源项目。本文按"先跑起来,再会改"的顺序讲一遍。 ## 为什么不从空

gitblog_00285的博客 646

vuejs实现很多照片组成爱心样式

vuejs实现很多照片组成爱心样式

learn_8的专栏 847
上一篇: 【Git】输入git push -u origin master报错
下一篇: 【Vue】补充一些需要注意的小点
哇哦Q
博客等级 码龄5年 4573粉丝 100原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值