讲述小程序之组件视图容器之view

简介: 讲述小程序之组件视图容器之view

前言        

组件是视图层的组成单元,具备UI风格样式以及特定的功能效果。当打开某款小程序后,界面中的图片、文字等都需要使用组件,小程序组件使用灵活,组件之间通过相互嵌套进行界面设计,开发者可以通过组件的选择属性设计出不同的界面效果。一个组件包括开始标签和结束标签,属性用来装饰这个组件的样式。


组件书写的格式

<标签名称属性="值">内容</标签名称>

视图容器

1.view

image.png

·hover-class:

解释:这个属性时当我们写了两个样式的时候,当我们开打开发者工具时看到的时样式1,但是当我们点击样式1的时候会变化成样式2的效果。

wxml:

<viewclass="lqj1"hover-class="lqj2"></view>

wxss:

.lqj1{
background-color: red;//背景为红色
width: 300rpx;//宽度
height: 300rpx;//高度
}
.lqj2{
background-color: blue;//背景为蓝色
width: 300rpx;//宽度
height: 300rpx;//高度
}

效果:

14.gif

·hover-stop-propagation:

解释:是否阻止父组件的点击状态,就是当我们两个view组件成嵌套关系时,尤其是当父view的样式面积较大而子view的样式面积较小时,会出现当我点击子view时父view也跟着变化,所以此属性的设置可以消除此问题。

没有设置·hover-stop-propagation这个属性时

wxml:

<viewclass="lqj3"hover-class="lqj4"><viewclass="lqj1"hover-class="lqj2"></view></view>

wxss:

.lqj1{
background-color: red;
width: 300rpx;
height: 300rpx;
}
.lqj2{
background-color: blue;
width: 300rpx;
height: 300rpx;
}
.lqj3{
background-color: chartreuse;
width: 600rpx;
height: 600rpx;
}
.lqj4{
background-color: darkmagenta;
width: 600rpx;
height: 600rpx;
}

效果:我们会发现问题,就是:但点击子组件时,子组件在变化的同时父组件也在变化

15.gif

设置·hover-stop-propagation这个属性时

wxml:

<viewclass="lqj3"hover-class="lqj4"><viewclass="lqj1"hover-class="lqj2"hover-stop-propagation="true"></view></view>

wxss:

.lqj1{
background-color: red;
width: 300rpx;
height: 300rpx;
}
.lqj2{
background-color: blue;
width: 300rpx;
height: 300rpx;
}
.lqj3{
background-color: chartreuse;
width: 600rpx;
height: 600rpx;
}
.lqj4{
background-color: darkmagenta;
width: 600rpx;
height: 600rpx;
}

效果:我们会发现问题,就是:但点击哪个组件,就只有被点击的组件变化

16.gif

·hover-start-time

解释:当组件有hover-class这个属性时,点击组件时多久才会从样式1变换到样式2

wxml:

<viewclass="lqj1"hover-class="lqj2"hover-start-time="500"></view>

wxss:

.lqj1{
background-color: red;
width: 300rpx;
height: 300rpx;
}
.lqj2{
background-color: blue;
width: 300rpx;
height: 300rpx;
}

效果:当点击组件时会发现,组件没有立即从样式1变换到样式2,而是等了500毫秒

17.gif

`hover-stay-time

解释:当组件有hover-class这个属性时,点击后从样式1变换到样式2之后,在样式2停留多长时间,再变回原来的样式1

wxml:

<viewclass="lqj1"hover-class="lqj2"hover-stay-time="1000"></view>

wxss:

.lqj1{
background-color: red;
width: 300rpx;
height: 300rpx;
}
.lqj2{
background-color: blue;
width: 300rpx;
height: 300rpx;
}

效果:点击会发现,从样式1变换到样式2后,再样式2停留了一段时间才变回到了原来的样式1

18.gif
















目录
相关文章
|
11月前
|
Web App开发 前端开发 JavaScript
前端新利器:CSS容器查询——让组件真正“自适应
前端新利器:CSS容器查询——让组件真正“自适应
561 83
|
前端开发 API 开发者
harmonyOS基础- 快速弄懂HarmonyOS ArkTs基础组件、布局容器(前端视角篇)
本文由黑臂麒麟(6年前端经验)撰写,介绍ArkTS开发中的常用基础组件与布局组件。基础组件包括Text、Image、Button等,支持样式设置如字体颜色、大小和加粗等,并可通过Resource资源引用统一管理样式。布局组件涵盖Column、Row、List、Grid和Tabs等,支持灵活的主轴与交叉轴对齐方式、分割线设置及滚动事件监听。同时,Tabs组件可实现自定义样式与页签切换功能。内容结合代码示例,适合初学者快速上手ArkTS开发。参考华为开发者联盟官网基础课程。
1363 75
harmonyOS基础- 快速弄懂HarmonyOS ArkTs基础组件、布局容器(前端视角篇)
|
小程序 数据可视化 JavaScript
微信小程序:轻松实现时间轴组件
本文介绍了如何在微信小程序中实现一个可视化时间轴组件。该组件适用于展示用户资金流动、投资结算等时间节点,帮助用户直观了解资金去向。时间轴支持自定义节点形状、显示序号、倒序排列等功能,并通过插槽灵活定义动态内容。文中详细介绍了组件的设计与使用方法,以及如何结合动态 slot 实现自定义操作。该组件为展示用户资金信息提供了美观、易用的解决方案。
982 1
微信小程序:轻松实现时间轴组件
|
小程序 前端开发 JavaScript
在线课堂+工具组件小程序uniapp移动端源码
在线课堂+工具组件小程序uniapp移动端源码
443 0
在线课堂+工具组件小程序uniapp移动端源码
|
小程序
微信小程序动态tabBar实现:基于自定义组件,灵活支持不同用户角色与超过5个tab自由组合(更新版)
微信小程序动态tabBar实现:基于自定义组件,灵活支持不同用户角色与超过5个tab自由组合(更新版)
3145 1
|
小程序 搜索推荐 API
微信小程序:自定义关注公众号组件样式
尽管关注公众号组件的样式固定且不可修改,但产品经理的需求却需要个性化的定制。在这种情况下,我们需要寻找解决方案,以满足这些特殊需求,尽管这可能有点棘手。
1287 0
微信小程序:自定义关注公众号组件样式
|
小程序 前端开发 JavaScript
微信小程序图表制作利器:ECharts组件的使用与技巧
微信小程序图表制作利器:ECharts组件的使用与技巧
1877 1
|
缓存 小程序 索引
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
1268 1
|
小程序 JavaScript
微信小程序之input组件及其获取用户输入信息
微信小程序之input组件及其获取用户输入信息
439 2
|
10月前
|
Kubernetes Docker Python
Docker 与 Kubernetes 容器化部署核心技术及企业级应用实践全方案解析
本文详解Docker与Kubernetes容器化技术,涵盖概念原理、环境搭建、镜像构建、应用部署及监控扩展,助你掌握企业级容器化方案,提升应用开发与运维效率。
1337 108