热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

小程序scrollview垂直滚动下设置高度问题

小程序很多控件都有内置的样式,可能会出现设置的样式表现与纯W3C标注表现不同;这里记录下很可能出现的问题,方便的处理方式;


  • 小程序很多控件都有内置的样式,可能会出现设置的样式表现与纯W3C标注表现不同;这里记录下很可能出现的问题,方便的处理方式;



  • 这里要做的需求是,page中top有一个50px高度的header-bar,box占据其余部分高度(里面放一个可滚动的列表,也就是scroll-view)



由于不同设备高度不同,所以box部分的高度需要是动态的;

有两种处理方式:


第一种header样式写死高度50px,在js的data中添加一个属性,在页面生命周期函数onload中计算

/**
* 页面的初始数据
*/
data: {
boxHeight: 0
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
let res = wx.getSystemInfoSync();
let boxHeight = res.windowHeight - 50;
this.setData({
'boxHeight': boxHeight
});
wx.setNavigationBarTitle({
title: '小程序中动态计算高度',
})
}

page {
width: 100%;
height: 100%;
background-color: plum;
}
.header {
background: red;
height: 50px;
}
.box {
background: yellowgreen;
}

上一种方式需要计算比较麻烦,特别是有些根据网络请求回来的内容撑高,还可能要考虑一些数据不够、请求失败等问题,第二种是利用样式来自动拉伸,如使用flex布局

page {
width: 100%;
height: 100%;
background-color: plum;
display: flex;
flex-direction: column;
}
.header {
background: red;
height: 50px;
}
.box {
background: yellowgreen;
flex: 1;
}



小程序scroll-view垂直滚动下设置高度问题


11.png

可以看到预览完全没问题,接下来往里面放一个滚动视图scroll-view,设置为可以垂直滚动,高度设置为100%样式

韦神和这位水友打了照面,这样近的距离下连开十枪,但居然全被这位水友完美躲过。连韦酱都露出了一脸不可置信的表情!网友们则不仅因为这位水友的身法表示赞叹,纷纷表示,"被打倒的人总说别人的枪法有多好!拜托,只是你自己的身法没到家好吗!"大家也从韦神被秀一事中收获了无限乐趣。不过,也有网友努力为韦神堪称人体描边挂的十枪辩解,都是因为这位水友喜欢韦神太久了,也太了解韦神了,"当喜欢一个人久了...他的身法、他的枪法、他打的每一颗子弹,甚至每一颗子弹走的路径,我都会了如指掌,所以韦酱他...伤不了我!"对此,韦神也转发肯定了这个逻辑,并推荐各位网友称:"男女朋友的可以试一试,打中一枪,说明他不够爱你!" 既然有韦神大力推荐,各位非单身的玩家们不妨一试啊,吃鸡究竟是不是一个爱情杀手游戏就能见分晓了! 刚不过枪?落地成盒?手把手教你成功吃鸡!快关注兔玩英雄训练营返回搜狐,查看更多
韦神和这位水友打了照面,这样近的距离下连开十枪,但居然全被这位水友完美躲过。连韦酱都露出了一脸不可置信的表情!网友们则不仅因为这位水友的身法表示赞叹,纷纷表示,"被打倒的人总说别人的枪法有多好!拜托,只是你自己的身法没到家好吗!"大家也从韦神被秀一事中收获了无限乐趣。不过,也有网友努力为韦神堪称人体描边挂的十枪辩解,都是因为这位水友喜欢韦神太久了,也太了解韦神了,"当喜欢一个人久了...他的身法、他的枪法、他打的每一颗子弹,甚至每一颗子弹走的路径,我都会了如指掌,所以韦酱他...伤不了我!"对此,韦神也转发肯定了这个逻辑,并推荐各位网友称:"男女朋友的可以试一试,打中一枪,说明他不够爱你!" 既然有韦神大力推荐,各位非单身的玩家们不妨一试啊,吃鸡究竟是不是一个爱情杀手游戏就能见分晓了! 刚不过枪?落地成盒?手把手教你成功吃鸡!快关注兔玩英雄训练营返回搜狐,查看更多

page {
width: 100%;
height: 100%;
background-color: plum;
display: flex;
flex-direction: column;
}
.header {
background: red;
height: 50px;
}
.box {
background: yellowgreen;
flex: 1;
}



小程序scroll-view垂直滚动下设置高度问题


2.png



  • 问题:可以看到一旦加入scroll-view组件,样式被破坏了,header的高度莫名其妙变成了0;

  • 疑问:小程序的说法是要求scroll-view一定要给一个固定的高度,不然就不行,难道只能用第一种方法来实现这个布局了?

我发现一个tip,其实只要给外围的box一个高度即可,随便一个高度,因为设置了flex拉伸级别,这个高度不影响拉伸;在H5中是没意义的,但是这里可以解决问题;



  • 最终给一个完整版本

财经股票商业汽车商业韦神和这位水友打了照面,这样近的距离下连开十枪,但居然全被这位水友完美躲过。连韦酱都露出了一脸不可置信的表情!网友们则不仅因为这位水友的身法表示赞叹,纷纷表示,"被打倒的人总说别人的枪法有多好!拜托,只是你自己的身法没到家好吗!"大家也从韦神被秀一事中收获了无限乐趣。不过,也有网友努力为韦神堪称人体描边挂的十枪辩解,都是因为这位水友喜欢韦神太久了,也太了解韦神了,"当喜欢一个人久了...他的身法、他的枪法、他打的每一颗子弹,甚至每一颗子弹走的路径,我都会了如指掌,所以韦酱他...伤不了我!"对此,韦神也转发肯定了这个逻辑,并推荐各位网友称:"男女朋友的可以试一试,打中一枪,说明他不够爱你!" 既然有韦神大力推荐,各位非单身的玩家们不妨一试啊,吃鸡究竟是不是一个爱情杀手游戏就能见分晓了! 刚不过枪?落地成盒?手把手教你成功吃鸡!快关注兔玩英雄训练营返回搜狐,查看更多
韦神和这位水友打了照面,这样近的距离下连开十枪,但居然全被这位水友完美躲过。连韦酱都露出了一脸不可置信的表情!网友们则不仅因为这位水友的身法表示赞叹,纷纷表示,"被打倒的人总说别人的枪法有多好!拜托,只是你自己的身法没到家好吗!"大家也从韦神被秀一事中收获了无限乐趣。不过,也有网友努力为韦神堪称人体描边挂的十枪辩解,都是因为这位水友喜欢韦神太久了,也太了解韦神了,"当喜欢一个人久了...他的身法、他的枪法、他打的每一颗子弹,甚至每一颗子弹走的路径,我都会了如指掌,所以韦酱他...伤不了我!"对此,韦神也转发肯定了这个逻辑,并推荐各位网友称:"男女朋友的可以试一试,打中一枪,说明他不够爱你!" 既然有韦神大力推荐,各位非单身的玩家们不妨一试啊,吃鸡究竟是不是一个爱情杀手游戏就能见分晓了! 刚不过枪?落地成盒?手把手教你成功吃鸡!快关注兔玩英雄训练营返回搜狐,查看更多

page {
width: 100%;
height: 100%;
background-color: plum;
display: flex;
flex-direction: column;
}
.header {
background: red;
height: 50px;
width: 100%;
display: flex;
}
.header > view {
flex: 1;
text-align: center;
line-height: 50px;
color: white;
}
.box {
background: yellowgreen;
flex: 1;
height: 100px;
}
.sv {
background-color: #e9e9;
height: 100%;
}



小程序scroll-view垂直滚动下设置高度问题


3.png




推荐阅读
  • 微信小程序导航跟随的实现方法
    本文介绍了在微信小程序中实现导航跟随的方法。通过设置导航的position属性和绑定滚动事件,可以实现页面向下滚动到导航位置时,导航固定在页面最上方;页面向上滚动到导航位置时,导航恢复到原始位置;点击导航可以平滑跳转到相应位置。代码示例也给出了具体实现方法。 ... [详细]
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • 本文总结了在编写JS代码时,不同浏览器间的兼容性差异,并提供了相应的解决方法。其中包括阻止默认事件的代码示例和猎取兄弟节点的函数。这些方法可以帮助开发者在不同浏览器上实现一致的功能。 ... [详细]
  • vue使用
    关键词: ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • Voicewo在线语音识别转换jQuery插件的特点和示例
    本文介绍了一款名为Voicewo的在线语音识别转换jQuery插件,该插件具有快速、架构、风格、扩展和兼容等特点,适合在互联网应用中使用。同时还提供了一个快速示例供开发人员参考。 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • 用Vue实现的Demo商品管理效果图及实现代码
    本文介绍了一个使用Vue实现的Demo商品管理的效果图及实现代码。 ... [详细]
  • Tkinter Frame容器grid布局并使用Scrollbar滚动原理
    本文介绍了如何使用Tkinter实现Frame容器的grid布局,并通过Scrollbar实现滚动效果。通过将Canvas作为父容器,使用滚动Canvas来滚动Frame,实现了在Frame中添加多个按钮,并通过Scrollbar进行滚动。同时,还介绍了更新Frame大小和绑定滚动按钮的方法,以及配置Scrollbar的相关参数。 ... [详细]
  • 【爬虫】关于企业信用信息公示系统加速乐最新反爬虫机制
    ( ̄▽ ̄)~又得半夜修仙了,作为一个爬虫小白,花了3天时间写好的程序,才跑了一个月目标网站就更新了,是有点悲催,还是要只有一天的时间重构。升级后网站的层次结构并没有太多变化,表面上 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了css回到顶部按钮相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 涉及的知识点-ViewGroup的测量与布局-View的测量与布局-滑动冲突的处理-VelocityTracker滑动速率跟踪-Scroller实现弹性滑动-屏幕宽高的获取等实现步 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • mui框架offcanvas侧滑超出部分隐藏无法滚动如何解决
    web前端|js教程off-canvas,部分,超出web前端-js教程mui框架中off-canvas侧滑的一个缺点就是无法出现滚动条,因为它主要用途是设置类似于qq界面的那种格 ... [详细]
  • Android获取app应用程序大小的方法
    Android获取app应用程序大小的方法-Android对这种方法进行了封装,我们没有权限去调用这个方法,所以我们只能通过AIDL,然后利用Java的反射机制去调用系统级的方法。 ... [详细]
author-avatar
琳尐琳安_641
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有