我有一个完全居中的div(itemSoldOutView)。在这个div中还有另一个div(itemSoldOutViewContent),它的最大高度应该是父div的90%。因此,如果内容太多,它就会滚动(注意:只有内部内容div应该滚动)。但这不起作用。如何设置正确的高度?
这是我的代码(JSFIDDLE):
#shadow {
position:fixed;
left:0;
top:0;
width:100%;
height:100%;
background: darkgray;
z-index:2;
}
#itemSoldOutView {
background: white;
position: absolute;
padding: 15px;
max-height: 80%;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
#itemSoldOutViewContent {
overflow: auto;
max-height: 90%;
}
#itemSoldOutViewCancel {
position: fixed;
right: 5px;
top: 5px;
width: 16px;
height: 16px;
background: red;
}
<div id="shadow">
<div id="itemSoldOutView">
<div id="itemSoldOutViewTitle">
<div id="itemSoldOutViewCancel"></div>
<h3>This is the title text:</h3>
</div>
<div id="itemSoldOutViewContent">
// much content
</div>
</div>
</div>
在css中,您可以使用
#itemSoldOutView{
box-sizing: border-box;
}
#itemSoldOutViewTitle h3{
position: fixed;
}
但由于您的内容超过了div的容量,因此内容将不断溢出。如果你想摆脱它,那么使用
#itemSoldOutView{
box-sizing: border-box;
overflow: scroll;
}
#itemSoldOutViewTitle h3{
position: fixed;
}
您需要在container div中将最大高度替换为高度,并添加溢出:隐藏
#itemSoldOutView {
background: white;
position: absolute;
padding: 15px;
overflow: hidden;
height: 80%;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
然后在div中,您要滚动add(添加)overflow-y(溢出):滚动
工作小提琴
另一个编辑:
实际上,您应该使内部div
小一点以显示所有可滚动的项目,在这里我将max-高度
减少到80%:
css prettyprint-override">#shadow {
position:fixed;
left:0;
top:0;
width:100%;
height:100%;
background: darkgray;
z-index:2;
}
#itemSoldOutView {
background: white;
position: absolute;
padding: 15px;
overflow: hidden;
height: 80%;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
#itemSoldOutViewContent {
overflow-y: scroll;
max-height: 80%;
}
#itemSoldOutViewCancel {
position: fixed;
right: 5px;
top: 5px;
width: 16px;
height: 16px;
background: red;
}
<div id="shadow">
<div id="itemSoldOutView">
<div id="itemSoldOutViewTitle">
<div id="itemSoldOutViewCancel"></div>
<h3>This is the title text:</h3>
</div>
<div id="itemSoldOutViewContent">
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
bla<br>
blabla<br>
last blabla
</div>
</div>
</div>
如果您想要一个可滚动的div,只需在CSS中放入溢出:scroll。这里的错误是将溢出属性放在了itemSoldOutView中
还从父元素继承高度。
看到这把小提琴了吗
我正在尝试为图像设置,即在几个嵌套容器内。图像的父级之一具有像素高度。但是图像仍然超过父级的高度。 嵌套容器有不同的用途: div.grid-container具有固定的宽度和高度(以像素为单位),以限制元素的总体大小 image-container用于内部用途(fiters、mirror、javascript行为) img本身不能超过总尺寸 我认为,如果父母中的一方有固定的高度,那么将“最大高度
问题内容: 将div高度设置为0px似乎无效。 div展开以显示其内容,我们如何防止这种情况发生? 问题答案: 如果您 真的 想确定它没有高度,可以使用以下方法: 如果您在IE上仍然遇到问题,也可以添加 在针对IE的样式表中添加了条件注释。这将触发IE中的hasLayout属性。 并且display:none与将其设置为零高度不同。只需查看各种clearfix解决方案,以解决 不 从流程中删除它的
问题内容: 在下面的代码中,我希望带有“ y”的div将div的高度与3个“ x”相匹配。 需要注意的是内部div是浮动的。 问题答案: 如果您不反对使用jQuery,可以使用EqualHeight,它应该做您想要的
问题内容: 我在上设置了20px的高度,但是当它在浏览器中呈现时,其高度仅为14px。 有任何想法吗? 问题答案: 您不能使用和设置和的元素。使用代替。 根据CSS2规范 10.6.1内联非替换元素 该属性不适用。内容区域的高度应基于字体,但是此规范未指定如何。UA可以例如使用字体的em-box或最大升序和降序。(后者将确保在em- box上方或下方具有部分文字的字形仍位于内容区域内,但导致不同字
问题内容: 我正在研究一个简单的Java聊天客户端gui应用程序。(服务器等由其他人完成)。 这不是一个大项目,但是我唯一的问题是,无论如何尝试调整上述GUI上任何组件的大小,都将无法正常工作。 例如: 不行 谢谢您的帮助。 问题答案: 在Swing中,您有两个用于布局的选项:手动执行所有操作或为您处理。 仅当您不使用时,通话才有效。由于您使用的是A,因此您必须使用其他方式来指定所需的内容。 尝试
问题内容: 我正在尝试将表格列分为两列。我希望最右边的列停靠在页面的右边,并且此列应具有不同的背景色。右侧的内容几乎总是小于左侧的内容。我希望右侧的div始终足够高,以到达其下一行的分隔符。如何使背景色填充该空间? 编辑:我同意这个示例非常类似于表,并且实际表将是一个不错的选择。但是我的“真实”页面最终将变得不像表格一样,我只想首先掌握此任务! 另外,由于某种原因,当我在IE7中创建/编辑帖子时,