我正在使用 Apache Click 开发一个应用程序,针对移动浏览器——所以我希望主要用于窄显示(向上 240 像素)。目前,我尝试将 aorg.apache.click.control.Form
与几个org.apache.click.control.Field
s 一起使用,包括TextField
s 和Select
s。
但是,当试图将整个页面的宽度限制为 240 像素时,表单仍然会水平溢出,这会迫使用户向右平移并使设计“丑陋”。一种可能的替代方法是将Field
标签放在各个输入字段的顶部,但是我还没有找到一种方法来做到这一点,因为 Click 将每个都呈现为带有两个Field
的 HTML ,一个包含 the ,另一个包含(for class )或(对于类)。<tr class="field">
<td>
<label>
<input>
TextField
<select>
Select
我正在考虑探索的一些想法:
- 我承认可能存在一些我不知道的“CSS 魔法”,它允许告诉浏览器“将所有
<td>
s 相互叠加”或类似的东西。 - 我的另一个想法(涉及更多工作)是对这些类进行子类化,将标签和字段明确地放在彼此之上,因为它们是 HTML 呈现的。一些移动浏览器(例如我测试过的基于 Windows Mobile)有一个“调整到单列”选项,但这需要明确的用户干预。在其他浏览器中似乎没有类似的选项,例如 Opera Mobile。
- 显式放置单独的标签并
Field
使用空字符串标签。这似乎是“最愚蠢”的解决方案,但也相对容易。
我希望可能有一种我没有提到或想到的相对简单的方法来做到这一点。因此,我正在寻找有关如何配置 Click 或使用 CSS 或其他内容的建议,以产生 HTML 呈现彼此顶部的两个 Field 元素(标签和实际输入字段)而不是“默认" 并排点击会在“窄”显示器上占用一些宝贵的屏幕。
提前致谢。