当前位置: 首页 > news >正文

小程序组件 —— 28 组件案例 - 推荐商品区域 - 实现结构样式

在这里插入图片描述
这一节目标是实现底部推荐商品的结构和样式,由于这里要求横向滚动,所以需要使用上节介绍的 scroll-view 功能,并使用 scroll-x 属性支持横向滚动,推荐商品区域中的每一个商品是一个单独的 view,每个view 中需要写三个组件:一个 image 渲染图片,两个 text 渲染文字;

下面我们打开微信开发者工具实现这个需求,在 index.wxml 中添加下面的代码:

<view class="good-hot"><scroll-view scroll-x class="scroll-x"><view><view class="good-item"><image src="../../assets/floor/1.png" mode="" /><text>鲜花玫瑰</text><text>66</text></view></view><view><view class="good-item"><image src="../../assets/floor/2.png" mode="" /><text>鲜花玫瑰</text><text>77</text></view></view><view><view class="good-item"><image src="../../assets/floor/3.png" mode="" /><text>鲜花玫瑰</text><text>88</text></view></view><view><view class="good-item"><image src="../../assets/floor/4.png" mode="" /><text>鲜花玫瑰</text><text>99</text></view></view><view><view class="good-item"><image src="../../assets/floor/5.png" mode="" /><text>鲜花玫瑰</text><text>100</text></view></view></scroll-view>
</view>

其主要功能是使用 scroll-x 构建一个横向滑动区域,使用 view 对每一个商品进行封装,每一个商品由一张 image 图片和两段 text 文本组成;对应的图片资源可以从 gitCode 中下载(图片源自尚硅谷,非个人所有,无意冒犯);

接着在 index.scss 中添加样式代码,如下:

.scroll-x {width: 100%;white-space: nowrap;view {display: inline-block;width: 320rpx;height: 420rpx;margin-right: 16rpx;.good-item {display: flex;flex-direction: column;justify-content: space-between;text {&:nth-of-type(1) {font-weight: bold;}}}image {width: 100%;height: 320rpx;}&:last-child {margin-right: 0rpx;}}}
}

css 样式的具体功能为:

  • .scroll-x:
    • width: 100%;: 设置容器的宽度为100%
    • white-space: nowrap;: 防止子元素换行,从而实现水平滚动效果
  • view:
    • display: inline-block;: 将每个视图设置为行内块元素,使其在同一行显示
    • width: 320rpx;: 设置每个视图的宽度为320rpx(假设这是一个特定的单位,如在小程序中使用的rpx)
    • height: 420rpx;: 设置每个视图的高度为420rpx
    • margin-right: 16rpx;: 设置每个视图右侧的外边距为16rpx,增加视图之间的间距
  • .good-item:
    • display: flex;: 使用Flexbox布局
    • flex-direction: column;: 将子元素垂直排列
    • justify-content: space-between;: 在主轴(垂直方向)上均匀分布子元素
  • text:
    • &:nth-of-type(1): 选择第一个text元素
    • font-weight: bold;: 将第一个text元素的字体加粗
  • image:
    • width: 100%;: 设置图片的宽度为100%,即占满父容器的宽度
    • height: 320rpx;: 设置图片的高度为320rpx
  • &:last-child:
    • margin-right: 0rpx;: 移除最后一个视图右侧的外边距

最后得到的效果为:

在这里插入图片描述
参考视频:尚硅谷微信小程序开发教程

http://www.lryc.cn/news/515717.html

相关文章:

  • Flink读写Kafka(DataStream API)
  • SCAU期末笔记 - 数据库系统概念往年试卷解析
  • flutter在windows平台中运行报错
  • HTML——75. 内联框架
  • python对mongodb的增删查改
  • 【JS】期约的Promise.all()和 Promise.race()区别
  • 使用 RxJS 库实现响应式编程
  • ARP攻击的原理和实现 (网络安全)
  • chatgpt model spec 2024
  • 单片机-LED实验
  • QILSTE H10-C321HRSYYA高亮红光和黄光LED灯珠
  • Appium(一)--- 环境搭建
  • 量子力学复习
  • 22408操作系统期末速成/复习(考研0基础上手)
  • 两种分类代码:独热编码与标签编码
  • 51单片机——共阴数码管实验
  • 【开源社区openEuler实践】rust_shyper
  • LiteFlow 流程引擎引入Spring boot项目集成pg数据库
  • 阻抗(Impedance)、容抗(Capacitive Reactance)、感抗(Inductive Reactance)
  • 旷视科技Java面试题及参考答案
  • reactor的Hooks.enableAutomaticContextPropagation();不生效解决方案
  • DS复习提纲模版
  • 蓝桥杯备赛:C++基础,顺序表和vector(STL)
  • 【LLM】概念解析 - Tensorflow/Transformer/PyTorch
  • 对一段已知行情用python中画出K线图~
  • Rocky Linux下安装meld
  • DVWA靶场Insecure CAPTCHA(不安全验证)漏洞所有级别通关教程及源码审计
  • JavaScript HTML DOM 实例
  • 软件架构和软件体系结构的关系
  • C++并发:在线程间共享数据