热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

将垂直滚动从页面移动到内部div-Moveverticalscrollfrompagetoinnerdiv

Ihaveapagewithoutverticalscrollon<htmlelement.Imeannomatterhowyouzoom-itwilla

I have a page without vertical scroll on element. I mean no matter how you zoom - it will adjust to screen size and there always be

我在

  • red div on top (with inner content) with fixed height
  • 顶部的红色div(内部内容),高度固定

  • dynamically expanded height green div on bottom (its height depends on inner content).
  • 底部动态扩展高度绿色div(其高度取决于内部内容)。

  • Between those divs there's 1 more div with 2 children (with yellow background) that have scrollable content. This div should fluid the rest of space.
  • 在这些div之间还有1个div,其中2个孩子(黄色背景)具有可滚动内容。这个div应该流动其余的空间。

To remove page's scroll I just feet the html height perfectly to its inner elements sum by using height: calc(100% - 83px) where 83px is top and bottom divs height sum. But here's a problem: when the bottom div's height increases I need to change scrollable center div's height with Javascript. I want to solve this only using css. Here's jsfiddle and the picture described by layout. enter image description here What I found so far:

要删除页面的滚动,我只需使用height:calc(100% - 83px)将html高度完美地放到其内部元素总和,其中83px是顶部和底部divs高度总和。但是这里有一个问题:当底部div的高度增加时,我需要用Javascript改变可滚动的中心div的高度。我想用css解决这个问题。这是jsfiddle和布局描述的图片。到目前为止我发现了什么:

  • I think that parent div should have some kind of overflow:auto; for children and a tricky ?height: 100% and children must have `height: 100%'
  • 我认为父div应该有某种溢出:auto;对于儿童和一个棘手的?身高:100%,儿童必须有'身高:100%'

  • I can't use absolute position because I don't know where the central div should start and end vertically
  • 我不能使用绝对位置,因为我不知道中央div应该从哪里开始和垂直结束

The code is listed below:

代码如下:




1 个解决方案

#1


1  

I think you are looking for a flex-box solution. It requires some love and care to get it to work on all modern browsers so take a look at caniuse.com for info about this.

我认为您正在寻找一个灵活的解决方案。它需要一些爱和关心才能让它在所有现代浏览器上运行,所以请查看caniuse.com获取有关此信息的信息。

It is worth pointing out that this does not work with old browser version at all and that a Javascript substitute will be required if support is essential.

值得指出的是,这根本不适用于旧的浏览器版本,并且如果支持必不可少,则需要Javascript替代品。

html,body{
  height:100%;
  margin:0;
}
#wrapper{
  height:100%;
  display:flex;
  flex-direction:column;
}
#header{
  height:50px;
  background-color:red;
}
#content{
  flex:1;  
  display: flex;
  background-color:yellow;
}
.scrollable{
  width: 50%;
  overflow-y:auto;
  float:left;
  display:inline-block;
}
#footer{
  background-color:green;
}
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1


推荐阅读
  • 整合百度UEditor编辑器于ASP后端的实现步骤与技巧
    随着微软停止对XP系统的支持,公司已全面升级至Windows 7。早期网站创建时使用的编辑器仅兼容IE6浏览器,而如今系统更新后,原有的编辑器已无法满足新环境的需求。本文详细介绍了如何将百度UEditor编辑器整合到ASP后端,包括实现步骤和实用技巧,确保网站在新系统下仍能高效运行并提供良好的用户体验。 ... [详细]
  • 使用 Vue 集成 iScroll 实现移动端表格横向滚动与固定列功能 ... [详细]
  • CSS3 实现鼠标悬停时滚动菜单的流畅过渡效果 ... [详细]
  • 滑动显示大图升级版
    之前做了一个滑动展示大图片的demo,之后在大神博客发现大神也做过一个类似的插件。于是把插件摘了下来研究了一下。改动了插件显示文本的部分并增加了一点注释。效果比我的好 ... [详细]
  • 高效批量文件重命名软件
    开发了一款基于Python的高效批量文件重命名软件,并集成了wxWidgets图形用户界面,使用cxfreeze将其打包为独立的可执行文件(exe)。该工具适用于需要频繁处理大量文件的用户,能够显著提高文件管理效率。详细使用说明包含在软件压缩包内。开发环境为Python 2.7和wxWidgets 3.0,运行环境要求兼容Windows系统。 ... [详细]
  • 前端技术实现调用摄像头进行拍照功能
    在公司项目中,为了实现调用摄像头进行拍照的功能,我们深入研究了HTML5的相关技术。尽管Java在许多方面表现出色,但在这一场景下,HTML5的灵活性和易用性更胜一筹。本文将分享具体的代码设计和实现细节,帮助开发者快速掌握这一功能。 ... [详细]
  • 本文详细探讨了Java集合框架的使用方法及其性能特点。首先,通过关系图展示了集合接口之间的层次结构,如`Collection`接口作为对象集合的基础,其下分为`List`、`Set`和`Queue`等子接口。其中,`List`接口支持按插入顺序保存元素且允许重复,而`Set`接口则确保元素唯一性。此外,文章还深入分析了不同集合类在实际应用中的性能表现,为开发者选择合适的集合类型提供了参考依据。 ... [详细]
  • 本文深入解析了 Apache 配置文件 `httpd.conf` 和 `.htaccess` 的优化方法,探讨了如何通过合理配置提升服务器性能和安全性。文章详细介绍了这两个文件的关键参数及其作用,并提供了实际应用中的最佳实践,帮助读者更好地理解和运用 Apache 配置。 ... [详细]
  • 题目描述非常吸引人。每颗星星可以通过其在窗口的左下角和右上角位置构建两条扫描线,从而将问题转化为区间增减和求最大值的操作。需要注意的是,位于边界的星星不应计入结果,因此在处理时应分别对左右边界进行适当的增减调整。此外,利用线段树和离散化技术可以显著提高算法效率,确保在大规模数据下的性能表现。 ... [详细]
  • Vuex 实战进阶:构建高效笔记本应用(第二篇)
    在上一篇文章中,我们初步探讨了 Vuex 在该项目中的应用。本文将深入解析整个项目的架构设计。首先回顾 `main.js` 的内容,然后重点分析 `App.vue` 文件,其中引入了 `Toolbar.vue` 和 `NodeList.vue` 组件,详细说明它们在应用中的作用和交互方式。通过这些组件的协同工作,我们将展示如何构建一个高效且响应迅速的笔记本应用。 ... [详细]
  • 如何运用蒙特卡洛方法计算NPV:计算机专业毕业设计遇到难题怎么办?
    许多计算机科学专业的学生在大学期间都会遇到这样的困扰:课堂上教授的内容往往偏向理论,实际应用的知识点讲解得较为浅显和概括,导致在进行毕业设计时,如运用蒙特卡洛方法计算净现值(NPV)等复杂问题时感到无从下手。本文旨在探讨如何通过深入理解和实践蒙特卡洛模拟技术,解决这类计算难题,为学生的毕业设计提供实用指导。 ... [详细]
  • 期末Web开发综合实践项目:运用前端技术打造趣味小游戏体验
    期末Web开发综合实践项目中,学生通过运用HTML、CSS和JavaScript等前端技术,设计并实现了一款趣味性十足的小游戏。该项目不仅检验了学生对前端基础知识的掌握情况,还提升了他们的实际操作能力和创意设计水平。视频链接展示了项目的最终成果,直观呈现了游戏的互动性和视觉效果。 ... [详细]
  • 新年伊始,正是学习的最佳时机。本文全面解析了CK1957-Zookeeper的核心概念与实践技巧,旨在帮助初学者快速掌握这一深度学习工具。通过详细的理论讲解和实际操作示例,读者可以更好地理解Zookeeper的工作原理及其在分布式系统中的应用。无论是新手还是有一定基础的学习者,都能从中受益匪浅。 ... [详细]
  • 本文深入探讨了SQL Server中三种高效的分页查询方法。首先,介绍了利用 `NOT IN` 和 `SELECT TOP` 结合的分页方案,该方法通过排除已获取的记录来实现分页。其次,详细分析了使用 `ROW_NUMBER()` 函数的分页技术,这种方法在处理大量数据时表现出色。最后,讨论了基于索引的分页策略,通过优化索引结构来提高查询性能。每种方法都附有具体的示例和性能对比,帮助读者选择最适合其应用场景的分页方案。 ... [详细]
  • betterscroll怎么做上拉加载? ... [详细]
author-avatar
农大军乐团_697
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有