- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个布局,我需要在 html 和 body(以及我使用的任何包装 div)上使用 height: 100% 来实现类似于页面的效果,以便我的第一个“页面”上的内容居中,向下滚动第二个“页面”上的内容居中等。
html 看起来像这样:
<section class="page" id="p01">
<div class="spacer">
</div>
<div class="outer">
<div class="inner">
Some content
</div>
<div class="inner">
Some content
</div>
</div>
</section>
<section class="page" id="p02">
<div class="spacer">
</div>
<div class="outer">
<div class="inner">
Some content
</div>
<div class="inner">
Some content
</div>
</div>
</section>
以及通过这种样式实现的垂直居中等:
body, .page {height: 100%; margin: 0 auto;}
.spacer {
float: left;
height: 50%;
margin-bottom: -150px;
}
.outer {
height: 300px;
width: 100%;
background-color: #fca;
clear: both;
position: relative;
display: block;
white-space: nowrap;
}
.inner {
width: 41%;
margin: 0 6%;
height: 300px;
background-color: green;
display: inline-block;
vertical-align: middle;
white-space: normal;
}
.inner:first-child {
margin-right: 0;
}
你可以在这个 fiddle 中看到它在工作:
http://jsfiddle.net/terraling/3V5rV/
问题是正文背景(这里我只是使用颜色,但在我的网站上它将是图像)泄漏到正文边缘,即正文内容具有最大宽度并且应该以白色居中边距。
我可以通过...将 html background-color 设置为白色来解决这个问题
http://jsfiddle.net/terraling/yM53t/
...但是当滚动到第二页时正文背景会被截断(这在第一个 fiddle 中不是问题)。
或者,我可以将背景图像设置在包装器 div 上而不是主体上。这解决了它泄漏到主体边缘的问题,但它仍然存在滚动时被切断的问题。
(参见:http://jsfiddle.net/terraling/3V5rV/1/)
任何涉及从任何 html、正文或包装器中删除 height: 100% 声明的解决方案都会折叠布局(包括替换为 max-height: 100%)。
最佳答案
不幸的是,这个结构存在很多问题,但并非所有问题都能得到解决。
正如您自己所见,如果 html
没有背景,则 body
的背景会延伸到视口(viewport)。这是可以解决的。
当元素 float 时,它不会影响其父元素的高度。所以它们不会生长(例如 body 不会膨胀)。如果您可以使用替代方案,就可以解决这个问题。要使元素垂直居中,您可以使用 display: table-cell
,例如,它允许您将内容垂直居中。
这就是所有希望破灭的地方。 height: 100%
当然是指父级的高度。 body
的父元素是 html
,它又是视口(viewport)的子元素。您为 html
设置了 100%
的大小(= 视口(viewport)的大小),为 body
设置了 100%
的大小>(= html
的大小 = 视口(viewport)的大小)。
所以现在 body
有一个固定的高度,它不能展开,这意味着背景也不会展开。现在有人可能会想到不给 body
大小,以便它可以扩展。但是 .page
也有 100%
。如果父级(在本例中为 body
)没有固定大小 100%
没有任何意义,将被视为 auto
,这意味着一样大作为内容。内容的高度为 300px
。所以 .page
元素将不再具有视口(viewport)的高度,而是 300px
。
关于css - 正文背景延伸到边距或在滚动时被截断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17424924/
我发现很多关于使用而不是关于定义 future 在 Dart 。假设我有 letsWait()这需要相当长的时间。如何使用 Future类(class)? import 'dart:async'; v
有什么区别: Class和 Class ? 谢谢 最佳答案 实际上是一样的 关于java - 反射java?延伸,我们在Stack Overflow上找到一个类似的问题: https://stacko
我想在下面的 jackson 反序列化中添加多个类。但我该怎么做呢?下面是示例代码。 XmlMapper mapper = new XmlMapper(); JaxbAnnotationModule
我正在使用 NetBeans 和 Glassfish 从现有 WSDL 构建 Web 服务。NetBeans 已从给定的 WSDL 创建了所需的类。WSDL 定义了一些基本数据类型(例如 BaseTy
我有一个获取这种类型参数的方法: NSArray 现在,当我获取此数组的一个元素时,我得到一个 ClassCastException。我的方法: public static List getWrapp
在使用泛型时,我遇到了声明 .如果我以集合接口(interface)的 addAll 方法为例。 它的声明是这样的: interface Collection { public b
我对集合中使用的通用通配符表示法有一些(违反直觉的)观察。通配符的目的 List是允许列表(T 的子类型)的赋值到“?”列表的引用的 T'。它的目的不是特别允许将 T 的子类型的元素添加到列表中( o
Closed. This question needs details or clarity。它当前不接受答案。 想改善这个问题吗?添加详细信息,并通过editing this post阐明问题。 2
你能帮我一个泛型吗?我有一个要求,我有一个 UI 表单,但根据类型,表单会完全更改。我为每种类型的表单创建了具有公共(public)字段的父 DTO 和子 DTO。使用 vaadin 进行验证。我该如
我有一个 list List generics; 我们如何对此进行排序?是否可以在 Comparator 实现上比较子类对象? 谢谢 最佳答案 参见Collections.sort ,其中T必须imp
尝试在 android 中创建一个内存游戏而不使用 xml 布局,本质上我现在想做的是在网格上的不同位置创建两张相同的卡片。所以我在这里问的是如何将这些卡片随机放置在网格上。我首先创建了随机整数数组,
所以我得到了一个接口(interface),其中我需要实现的一个方法为我提供了一个集合,并希望我将集合中的数据“全部添加”到我的对象中。我仍然不确定集合到底是什么。它是一个数组列表吗?我不相信它是,但
有没有办法强制最后一列延伸到 DataGrid WPF 的宽度? 因为在某些情况下,当 DataGrid 的宽度大于所有列的累积宽度时,DataGrid 的行为就像包含最后一个空列。 public
我在对象中有一个变量: private final Map bElementsToAdd = new HashMap<>(); 使用Builder模式中的方法我想完成这个 map 。 public B
这个问题已经有答案了: Can't add value to the Java collection with wildcard generic type (4 个回答) 已关闭 9 年前。 为什么我
我的问题正是我的标题所说的。 我有以下类(class) public class StoreItem { //Lots of irrelevant information! :) }
这个问题在这里已经有了答案: Why adding an element (of correct type) into a List through a method of is a compil
我正在准备 Java 期末考试。我遇到一道题,需要填空。 需要填空的相关代码 ____ ____ C {} ____ B extends ____ , C {} 问题是:我可以插入所有这些空白来编译我
我有一个.page 围绕着里面的所有内容。当内容延伸时,.page 也会延伸。 . 我的主要问题是 .leftBannerBackground 不使用 .page 扩展. 我能做些什么来调整 .l
有时,很多次我在文档中看到这种情况。这让我想知道要输入什么。有人可以用清晰的简化文字向我解释这句话的意思吗:D。这是怎么回事: ArrayList(Collection c) 最终被用作: new A
我是一名优秀的程序员,十分优秀!