热门标签 | 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




推荐阅读
  • 在PHP中如何正确调用JavaScript变量及定义PHP变量的方法详解 ... [详细]
  • 深入解析微信小程序开发中的全局配置文件设置与优化技巧
    本文深入探讨了微信小程序开发中全局配置文件的设置与优化技巧,详细解析了 `app.js`、`app.json`、`app.wxss` 和 `project.config.json` 的功能与最佳实践。通过合理配置这些文件,开发者可以显著提升小程序的性能和用户体验。文章还介绍了如何利用这些配置文件进行模块化开发和调试,帮助开发者更好地管理和维护小程序项目。 ... [详细]
  • 装饰者模式(Decorator):一种灵活的对象结构设计模式
    装饰者模式(Decorator)是一种灵活的对象结构设计模式,旨在为单个对象动态地添加功能,而无需修改原有类的结构。通过封装对象并提供额外的行为,装饰者模式比传统的继承方式更加灵活和可扩展。例如,可以在运行时为特定对象添加边框或滚动条等特性,而不会影响其他对象。这种模式特别适用于需要在不同情况下动态组合功能的场景。 ... [详细]
  • 网站访问全流程解析
    本文详细介绍了从用户在浏览器中输入一个域名(如www.yy.com)到页面完全展示的整个过程,包括DNS解析、TCP连接、请求响应等多个步骤。 ... [详细]
  • 技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统
    技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统 ... [详细]
  • 本文详细解析了使用C++实现的键盘输入记录程序的源代码,该程序在Windows应用程序开发中具有很高的实用价值。键盘记录功能不仅在远程控制软件中广泛应用,还为开发者提供了强大的调试和监控工具。通过具体实例,本文深入探讨了C++键盘记录程序的设计与实现,适合需要相关技术的开发者参考。 ... [详细]
  • Python 伦理黑客技术:深入探讨后门攻击(第三部分)
    在《Python 伦理黑客技术:深入探讨后门攻击(第三部分)》中,作者详细分析了后门攻击中的Socket问题。由于TCP协议基于流,难以确定消息批次的结束点,这给后门攻击的实现带来了挑战。为了解决这一问题,文章提出了一系列有效的技术方案,包括使用特定的分隔符和长度前缀,以确保数据包的准确传输和解析。这些方法不仅提高了攻击的隐蔽性和可靠性,还为安全研究人员提供了宝贵的参考。 ... [详细]
  • C++ 异步编程中获取线程执行结果的方法与技巧及其在前端开发中的应用探讨
    本文探讨了C++异步编程中获取线程执行结果的方法与技巧,并深入分析了这些技术在前端开发中的应用。通过对比不同的异步编程模型,本文详细介绍了如何高效地处理多线程任务,确保程序的稳定性和性能。同时,文章还结合实际案例,展示了这些方法在前端异步编程中的具体实现和优化策略。 ... [详细]
  • 利用爬虫技术抓取数据,结合Fiddler与Postman在Chrome中的应用优化提交流程
    本文探讨了如何利用爬虫技术抓取目标网站的数据,并结合Fiddler和Postman工具在Chrome浏览器中的应用,优化数据提交流程。通过详细的抓包分析和模拟提交,有效提升了数据抓取的效率和准确性。此外,文章还介绍了如何使用这些工具进行调试和优化,为开发者提供了实用的操作指南。 ... [详细]
  • 在 Vue 应用开发中,页面状态管理和跨页面数据传递是常见需求。本文将详细介绍 Vue Router 提供的两种有效方式,帮助开发者高效地实现页面间的数据交互与状态同步,同时分享一些最佳实践和注意事项。 ... [详细]
  • 如何撰写PHP电商项目的实战经验? ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • 在《Linux高性能服务器编程》一书中,第3.2节深入探讨了TCP报头的结构与功能。TCP报头是每个TCP数据段中不可或缺的部分,它不仅包含了源端口和目的端口的信息,还负责管理TCP连接的状态和控制。本节内容详尽地解析了TCP报头的各项字段及其作用,为读者提供了深入理解TCP协议的基础。 ... [详细]
  • 本文深入探讨了JavaScript中`this`关键字的多种使用方法和技巧。首先,分析了`this`作为全局变量时的行为;接着,讨论了其在对象方法调用中的表现;然后,介绍了`this`在构造函数中的作用;最后,详细解释了通过`apply`等方法改变`this`指向的机制。文章旨在帮助开发者更好地理解和应用`this`关键字,提高代码的灵活性和可维护性。 ... [详细]
  • 微信小程序实现类似微博的无限回复功能,内置云开发数据库支持
    本文详细介绍了如何利用微信小程序实现类似于微博的无限回复功能,并充分利用了微信云开发的数据库支持。文中不仅提供了关键代码片段,还包含了完整的页面代码,方便开发者按需使用。此外,HTML页面中包含了一些示例图片,开发者可以根据个人喜好进行替换。文章还将展示详细的数据库结构设计,帮助读者更好地理解和实现这一功能。 ... [详细]
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社区 版权所有