我使用ASP.NET。到目前为止,我总是使用表格来输入它们,并且看起来很好看。但不久前我读到表格并非如此。所以,我想知道,在我的webforms上放置输入字段的正确方法是什么,但stil让它们看起来不错,也就是说,左对齐控件旁边的一个严格对齐的标签,每行可能多于一个,并且下一行,标签和控件与之前的控件对齐。
我唯一能想到的是每个标签/控制一个div,但这感觉很奇怪......
另外,我的控件应该在<form>
标签内吗?我从来没有用过它们。
答案 0 :(得分:2)
在有意义的时候使用表格。带有一列标签和一列输入的表单非常有意义。
老实说,我认为整个“无桌布”运动已经变得比其他任何东西都更加流行。我已经看到人们花费无数个小时尝试用不同的HTML标签重新创建一个表结构,除了说“他们没有使用表”。那真是太愚蠢了,为什么要重新创造已经完美无缺的东西呢?
当您开始使用表格布局页面时,会出现使用表格的问题。例如:
不要这样做
<body>
<table>
<tr class="header"><td><!-- header content --></td></tr>
<tr class="content"><td><!-- page content, possibly with a two column table for sidebar --></td></tr>
<tr class="footer"><td><!-- footer content --></td></tr>
</table>
</body>
然而,使用表格来构建表单非常有意义。
是的,与您的表单相关的所有控件都应在form
标记内。
答案 1 :(得分:1)
使用表来定位项目没有任何问题。您也可以使用CSS进行定位,但是您必须处理跨浏览器支持。就个人而言,我使用表格来做这种事情。
答案 2 :(得分:0)
我认为你所要问的是写semantic HTML。 <TABLE>
标签最初用于呈现表格数据,但已被选择用于一般布局。这种情况一直持续到今天,尽管事实上HTML和CSS已经发展到更多的布局选择。
通过固定的网格布局,我们可以轻松了解表格。花车可以花一些时间来理解。
没有对错,但许多人为了编写更多的语义HTML,会在输入周围使用<ul><li>
标签,因为表单输入可以在某种意义上被视为列表。
关于<FORM>
标签的使用,现在流行的是AJAX GETS和POSTS,你并不总是需要它们,但我通常都会将它们包括在内,作为制作更多语义代码和提高清晰度的一种手段对于后面的开发人员,但作为一个容器使用,所以当我需要使用jQuery(或您选择的库)选择器时,我可以解决子输入。
答案 3 :(得分:0)
表格仅用于显示网页上的表格数据。它们不应该用于布局。
相反,您应该使用div标签来布局页面的不同元素。 e.g:
<div class="Labels">
<label for="FullName">Name: *</label>
</div>
<div class="Fields">
<input class="text" type="text" name="FullName" id="FullName" />
</div>
然后,您应该使用CSS作为页面布局,将各种元素放在页面上您想要的位置,并将元素放在一起等。
如果您不熟悉使用CSS进行布局,请查看使用CSS浮动。