i-view原生样式覆盖的一种思路

如果在vue脚手架中使用i-view作为ui开发工具。那么有时会遇到i-view的原生样式不符合个人要求的情况。如果要进行样式覆盖。那么可以采用如下的书写方式。

首先,先将你新自定义的css样式(也就是和i-view样式无关的css样式)都统一写在<style scoped></style>局部样式块中,局部样式一般用来调节组件放置的位置,对齐方式,浮动方式等位置信息,比如可以为一个<div class='groupbox'></div>容器编写一个如下css样式。

<style scoped>
.groupbox { //比如我groupbox就是完全自己命名的样式,与i-view组件无关
  width: 100%;
  height: 100%;
  border:rgb(6, 120, 225);
  padding: 10px;
  font-weight: bold;
  border-style: ridge;
}
</style>

========================================================================================================

然后,就是把你想要覆盖或者说替换掉的原生i-view组件,的样式写在<style></style>全局样式中。如下为i-view中modal对话框的header覆盖自定义的样式。

<style>
 .ivu-modal-header {
   border-radius: 5px !important;
   background-color: rgb(45,140,240) !important;
 }
</style>

对这样通过全局样式覆盖还要强调的是,
1.样式的类名必须和i-view原生的类名相同,类名具体是什么在浏览器的开发者工具中选择对应的部分查看。
2.对于i-view的原生样式中已经拥有的样式,需要在自定义覆盖的样式之后加上!important来使其升高优先级才能生效如果是你新加入的则不需要这里需要注意的是,在单个组件中无论是用!important覆盖的还是新引入的i-view全局样式会向外影响到其他使用相同i-view样式的组件。
3.推荐在全局覆盖的过程中只需要把你想覆盖的和想新增的写上就行,想保留原样的样式可以省略(比如,你引用的某个i-view组件原生样式已经定义了background-color属性和border-style属性,你不想修改这个颜色只想修改边框,那么在覆盖时你只需要书写(border-style:××× !important)就行了,不要重复的书写background-color属性,这样的好处是代码量少,覆盖内容清晰,便于有需要时的修改。

下面展示一下总体布局,以便更直观认识

<template>
	// 这里是具体标签的区域
</template>

<script>
  // 这里是JavaScript代码的区域
</script>

<style scoped>
// 把你与i-view组件无关的局部样式写在这里
.groupbox {
  width: 100%;
  height: 100%;
  border:rgb(6, 120, 225);
  padding: 10px;
  font-weight: bold;
  border-style: ridge;
}
</style>

<style>
// 把你想要覆盖掉的i-view原生样式和新加入的样式写在这里
 .ivu-modal-header {
   border-radius: 5px !important;
   background-color: rgb(45,140,240) !important;
   height: 50px; //不确定原生i-view有没有这个样式,当作没有做一个示范
 }
</style>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信小程序的原生 picker-view一种可以进行滚动选择的组件。它可以在小程序中展示一个滚动的选择器,用户可以通过上下滑动来选择需要的选项。 使用 picker-view 的步骤如下: 1. 在 wxml 文件中,通过<picker-view>标签来定义一个 picker-view 组件,可以通过style属性来设置它的样式。 2. 在 js 文件中,首先需要通过页面的setData()方法来初始化 picker-view 组件的数据源,使用数组的形式来表示选项。 3. 在 wxml 文件中,通过<picker-view-column>标签来定义 picker-view 中的每一列。可以使用wx:for属性来循环渲染每一列的选项。 4. 在 js 文件中,可以通过 onLoad()或者onShow()等生命周期方法来初始化 picker-view 组件的选中项。可以通过setData()方法更新 selected 属性的值来改变选中项。 5. 在 wxml 文件中,通过<view>标签来定义一个按钮或者其他交互元素,通过bindtap属性来绑定事件处理函数。 6. 在 js 文件中,实现事件处理函数,并通过setData()方法更新 selected 值以改变选中项。 7. 可以通过onPickerChange()等事件来监听 picker-view 的选中项改变的事件,并实现相应的逻辑。 需要注意的是,picker-view 组件的数组类型数据源,每一项都需要有value和text两个属性,分别表示选项的值和显示文本。 通过以上步骤,就可以在微信小程序中使用原生 picker-view 组件实现选择器的功能。用户可以滚动选择选项,并通过自定义的事件处理函数来获取选中项的值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值