微信小程序实现首页图片多种排版布局!
先来个效果图:


使用技术主要是flex布局,绝对定位布局,小程序前端页面开发,以及一些样式!
直接贴代码,都有详细注释,熟悉一下,方便以后小程序开发!
wxml:
<view class='indexcontainer'>
<!-- 顶部推荐图片轮播 -->
<view class='selection'>
<swiper indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}">
<block wx:for="{{imgUrls}}" wx:key="*this">
<swiper-item>
<image src="{{item}}" class="slide-image" mode='scaleToFill' />
</swiper-item>
</block>
</swiper>
</view>
<!-- 第二部分-->
<view class='selection'>
<!-- 头部文字 -->
<view class="header">
<text style='margin-left: 5px;'>英杰之诗</text>
<text class='all'>英雄的回忆</text>
</view>
<!-- 内容 -->
<view class='content'>
<view class='content-item' wx:for="{{contentImgUrls}}" wx:key="url" wx:for-item="item">
<!-- 图片 -->
<image src="{{item.url}}" class="slide-image" mode='scaleToFill'/>
<!-- 图片上的文字说明 -->
<view class='content-item-title'>
<text>{{item.title}}</text>
</view>
</view>
</view>
</view>
<!-- 第三部分 -->
<view class='selection'>
<!-- 头部文字 -->
<view class="header">
<text style='margin-left: 5px;'>神庙攻略</text>
<text class='all'>海拉尔历险记</text>
</view>
<!-- 内容 -->
<view class='list-item' wx:for="{{HotImgUrls}}" wx:key="url" wx:for-item="item">
<!-- 文章图片 -->
<view class='list-item-image'>
<image src='{{item.url}}' class="slide-image" mode='scaleToFill'></image>
<!-- 作者头像 -->
<image src='{{item.head}}' class="avatar" mode='scaleToFill'></image>
</view>
<!-- 文章内容 -->
<view class='list-item-text'>
<view class='list-item-text-title'>
<text>{{item.title}}</text>
</view>
<view class='list-item-text-context' >
<text>{{item.content}}</text>
</view>
</view>
</view>
</view>
</view>
js:
Page({
data: {
//顶部轮播图
imgUrls: [
'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=63967211,2305810881&fm=27&gp=0.jpg',
'https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=3265697507,322543478&fm=27&gp=0.jpg',
'https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=985354164,1752304932&fm=26&gp=0.jpg'
],
//第二部分数据数组
contentImgUrls:[
{
title:'塞尔达公主',
url:'https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/u=2716688360,1326705556&fm=27&gp=0.jpg'
},{
title:'卓拉公主-弥法老婆',
url:'https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=2527034280,2956682531&fm=27&gp=0.jpg'
},{
title:'塞尔达公主',
url:'https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=689739696,3300191086&fm=27&gp=0.jpg'
},{
title:'塞尔达公主',
url:'http://img4.imgtn.bdimg.com/it/u=4258802685,2724420509&fm=26&gp=0.jpg'
}
],
//死三部分数据
HotImgUrls: [
{
//头像地址,文字标题,文字内容,图片地址
head:'https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1037527703,3129433808&fm=27&gp=0.jpg',
title:'海拉尔平原的冒险',
content: '海拉尔区是隶属内蒙古自治区呼伦贝尔市的一个市辖区,是呼伦贝尔市政治、经济、文化中心。该区位于内蒙古自治区东北部,区域范围为东经119°30′48〃— 120°35′36〃;北纬49°5′44〃—19°27′15〃,面积1440平方公里。',
url: 'https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1532027772,1266945951&fm=27&gp=0.jpg'
},
{
head: 'https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1037527703,3129433808&fm=27&gp=0.jpg',
title: '拯救塞尔达公主吧',
content: '卓拉公主-弥法老婆',
url: 'https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=2404695142,3634522143&fm=27&gp=0.jpg'
},
{
head: 'https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1037527703,3129433808&fm=27&gp=0.jpg',
title: '快速开地图塔',
content: '塞尔达公主',
url: 'https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=2225874892,982427892&fm=26&gp=0.jpg'
},
{
head: 'https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1037527703,3129433808&fm=27&gp=0.jpg',
title: '滑翔伞获得攻略',
content: '塞尔达公主',
url: 'https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=4216945098,3102493232&fm=26&gp=0.jpg'
}
],
indicatorDots: true, //显示面板显示点
autoplay: false, //自动切换
interval: 5000, //切换时间
duration: 1000 //动画时长
},
css样式:
page{
height: 100%;
}
.selection{
border-bottom: 6px solid #ddd;
}
.indexcontainer{
width: 100%;
height: 100%;
}
.selection{
margin-top: 10px;
}
.slide-image{
width: 100%;
height: 100%;
}
.header{
border-left-width: 2px;
border-left-style: solid;
border-left-color: green;
display: flex;
justify-content: space-between;
height: 30px;
padding-left: 10rpx;
padding-right: 10rpx;
margin-top: 10px;
margin-bottom: 10px;
}
.all{
margin-right: 5px;
color: green;
}
.content{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.content-item{
width: 47%;
height: 280rpx;
background-color: red;
margin: 5px;
/* 绝对定位的父级必须要定位 */
position: relative;
}
.content-item-title{
position: absolute; /*绝对定位,文字覆盖图片上*/
color: white;
bottom: 0px; /* 位置在父级元素底部 */
font-size: 17px;
width: 98%;
height: 100rpx; /* 设置容器高度,显示渐变的高度 */
text-align: center;
/* 背景渐变:bottom:从下到上,右0.8向0透明渐变 */
background: -webkit-linear-gradient(bottom,rgba(0,0,0,0.5),rgba(0,0,0,0));
display: flex; /* flex布局,控制容器内文字元素在底部 */
flex-direction: column;
justify-content: flex-end;
padding: 1% 1% 1% 1%;
}
.list-item{
width: 100%;
height: 500rpx;
}
.list-item-image{
width: 100%;
height: 300rpx;
position: relative;
}
.list-item-text{
width: 96%;
height: 200rpx;
}
.avatar{
width: 90rpx;
height: 90rpx;
border-radius: 50%;
position: absolute;
bottom: -45rpx;
right: 50rpx;
}
.list-item-text{
margin-top: 10px;
padding-left: 2%;
padding-right: 2%;
}
.list-item-text-context{
font-size: 12px;
margin-top: 8px;
color: #999;
}
微信小程序实现首页图片多种排版布局!的更多相关文章
- 微信小程序点击图片放大预览
微信小程序点击图片放大预览使用到 wx.previewImage 接口,可以放大.上/下一张 上代码 wxml代码 <view class='content-img' wx:if="{ ...
- 微信小程序简单封装图片上传组件
微信小程序简单封装图片上传组件 希望自己 "day day up" -----小陶 我从哪里来 在写小程序的时候需要上传图片,个人觉得官方提供的 Uploader 组件不是太好用, ...
- 微信小程序开发之图片预览
实现图片的展示和大图预览 使用wx.previewImage(OBJECT)来实现 OBJECT参数说明: 参数 类型 必填 说明 current String 否 当前显示图片的链接,不填则默认为 ...
- 微信小程序——引入背景图片【六】
前言 之前写了一些小程序的博文只是看文档边看边写,了解下他,这次可是真枪真刀的做了! 框架使用的是美团的mpvue,我也是一边学习,一边写的,如有错误之处,还望大家指出. 在这里我有个问题,为什么微信 ...
- 微信小程序——网盘图片预览
微信小程序图片预览提供了一个wx.previewImage接口,如下图: 现在我需要对网盘文件里的图片预览,但是网盘从后台返回的数据是各种类型的文件,如下图所示: 那么我们需要解决2个问题: 1.从这 ...
- 微信小程序之裁剪图片成圆形
前言 最近在开发小程序,产品经理提了一个需求,要求微信小程序换头像,用户剪裁图片必须是圆形,也在github上看了一些例子,一般剪裁图片用的都是方形,所以自己打算写一个小组件,可以把图片剪裁成圆形,主 ...
- 微信小程序添加背景图片的坑
给微信小程序页面加载背景图片解决方案 直接附上原文地址: 给微信小程序页面加载背景图片解决方案 - YUSIR 完美CODING世界 - CSDN博客 https://blog.csdn.net/y ...
- 微信小程序之base64图片如何预览与一键保存到本地相册?
需求:由于后台服务器各方面的限制,现在服务器返回的图片是base64格式的,小程序端需要支持预览图片和多个图片一键下载功能 一.如何预览base64位图片? WXML页面:item.src的值是bas ...
- [入门到吐槽系列] 微信小程序 敏感违规图片检测 mediaCheckAsync,客服接口 消息推送 的各种坑分享!
前言: 最近需要做个用户上传图片,服务端校验图片问题的需求.需要使用小程序消息推送,异步接受腾讯的图片验证回调.实在太多坑了. 相信10分钟看完本文的朋友,可以非常顺利避坑. 前期准备: 首先需要一个 ...
随机推荐
- Linux内核设计与实现 第十八章
1. 内核调试的难点 重现bug困难 调试风险比较大 定位bug的初始版本困难 2. 内核调试的工具和方法 2.1 输出 LOG 输出LOG不光是内核调试, 即使是在用户态程序的调试中, 也是经常使用 ...
- final发布评论Ⅱ
奋斗吧兄弟:奋斗吧兄弟团队提供了草原.水域.田地三种环境可以进行选择.功能如下:添加自定义生物功能可以增加生物种类,但是无法设置捕食关系,这里希望想办法完善.生物除了图片方式以外,还可以以文字的方式展 ...
- [转帖]PG的简单备份恢复 找时间进行测试
转帖PG的简单使用 https://blog.csdn.net/lk_db/article/details/77971634 一: 纯文件格式的脚本: 示例:1. 只导出postgres数据库的数据, ...
- Windows 下安装redis 并且设置开机自动启动的过程.
1. 下载redis 的 windows下的安装文件 https://github.com/MicrosoftArchive/redis/releasesmsi文件下载地址https://github ...
- CentOS下安装Python3
目录 CentOS下安装Python3 下载 解压 配置 gcc sudo权限 vim 编译 安装 添加软链接 pip安装出错,找不到SSL 安装virtualenv和virtualenvwrappe ...
- java8新特性(三)_Optional类的使用
说实话,我第一次知道这个东西是从阿里规约中,因为公司前一段时间一直在搞代码审核,我的代码写的就感觉很烂,就像规范下.让别人看起来没那么烂.于是就开始看阿里规约,在看到NPE处理的时候,上面提到用Opt ...
- 一个由于springboot自动配置所产生的问题的解决
由于我的项目里面需要使用到solr,我做了一下solr和springboot的整合,结果启动项目的时候,就报错了...报错的信息的第一行提示如下: org.springframework.beans. ...
- BZOJ 4242 水壶(BFS建图+最小生成树+树上倍增)
题意 JOI君所居住的IOI市以一年四季都十分炎热著称. IOI市是一个被分成纵H*横W块区域的长方形,每个区域都是建筑物.原野.墙壁之一.建筑物的区域有P个,编号为1...P. JOI君只能进入建筑 ...
- 解决 winform 界面对不齐
最近做了一个winform的程序,本机上界面对得很齐,到一到客户的机器上就惨不忍睹,一番研究后搞定: 1. AutoScaleMode = None 2. BackgroundImageLayout ...
- CRT && exCRT模板
CRT从各种方面上都吊打exCRT啊...... 短,好理解... 考虑构造bi使得bi % pi = ai,bi % pj = 0.然后全加起来就行了. 显然bi的构造就是ai * (P/pi) * ...