无论我上网,无论在哪里,我总是不停地打败我,我不应该使用表格。可悲的是,我是少数几个仍然坚持使用它们的程序员之一 - 我坦率地发现CSS的对齐和布局特性对我来说不够强大,冷火鸡,不要使用表格。设置我的个人程序员的特质之外,我想尝试攻击我的CSS系统主要discontentments之一:不使用表格的CSS Table-Like对齐? (CSS RelativeLayout)
比方说,我想有这样的布局:
+---+---+
| A | B |
+---+---+
| C | D |
+---+---+
在上面例如,我希望A和C的宽度相同,并且B
和D
的宽度保持不变。
我也想高度A
和B
保持锁定在一起,我想C
和D的高度保持不变。
为了澄清,如果列中的任何元素变得更宽,我希望该列中的元素的所有变得更宽。如果一行中的任何元素变得更高,我又想让同一行中的所有元素都变得更宽。
我刚刚描述的是我们的老朋友表的确切功能。在我看来,表格对于这些布局非常有用!如果我尝试类似于使用CSS布局的东西,我可能会是这样的:
+-------+---+
| A | B |
+---*---*---+
| C | D |
+---+-------+
这将非常不是我要找的那种布局。 (A
和C
使锯齿列,而不是完美,流畅的列,我宁愿)
把我的问题简单地说,我可以真的使用方式,使用CSS布局(不是预先定义的宽度或高度)将一个CSS框边缘的位置对齐到不同CSS框边缘的位置。如果CSS支持一个简单的功能,我可以立即放弃表格,并创建布局甚至超出表格的功能!这种功率的一个很好但无用的例子是在桌子两侧的两个断开的盒子,动态地彼此共享完全相同的高度和垂直位置。
但不幸的是,在我对互联网的搜索中,迄今为止我发现的最先进的对齐方式是中心,左对齐和右对齐。所有与其他元素不相关的对齐类型,使它们无用。
我想要的只是一种将HTML元素与其他HTML元素对齐而不必使用表的方法!
编辑
虽然采摘标签这个问题,我碰到一个描述传来,几乎总结了这一切:
的RelativeLayout:布局在孩子的位置可以 描述相对于彼此或与父母相关。
有没有CSS RelativeLayout?或者我坚持使用表格,只要我想这样做?
我将接受最接近我想要的功能,而无需使用预定的宽度或高度(包括回答“没事就好存在,”如果没有其他人提供更好的东西)答案。
人们总是得到这个错误:这正是表的意义,应该使用的情况。尝试在纯css中模仿他们的行为是没有意义的。为了布局的目的,许多情况下应避免使用表格,但并非总是如此。 – arkascha
如果你真的想要一张桌子,那么桌子就是答案。然而,问题是为什么你绝对想要这种行为?这意味着当人们认为他们需要一张桌子时,他们会遇到一些情况,但实际上,响应式css解决方案可能会更好,甚至更好。 – mb14
相关http://stackoverflow.com/questions/591539/forms-can-they-be-done-without-tables –