如何在Asp.Net中使用CSS创建多列数据输入表单?
在将桌面应用程序转换为 Web 应用程序时,我在尝试使用 CSS 实现多列数据输入表单时遇到了自己的无知。我决心避免使用表格来处理此类事情,虽然我发现了一个很好的 参考布置数据输入表单,我找不到任何适用于像这样的多列布局的内容:
有人能指出我正确的方向吗?
While converting a desktop application to a web app, I've run across my ignorance when attempting to implement a multi-column data entry form using CSS. I'm resolved to avoid using tables for this type of thing, and while I found a good reference to laying out a data entry form, I can find nothing that applies to multiple-column layouts like this one:
Can anyone point me in the right direction?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这是一个屏幕截图,请注意我如何演示该选项卡带数字的顺序:
请注意,
RedFilter 的
答案有不同的 Tab 键顺序,我已在下面的屏幕截图中进行了演示:(下面的代码包含 ASP.NET 验证器)
CSS (跨浏览器友好)
HTML
Here's a screen shot, please notice how I demonstrated the tab order with numbers:
Please note that
RedFilter's
answer has a different tab order, which I have demonstrated in the screenshot below:(code below complete with ASP.NET validators)
CSS (cross browser friendly)
HTML
有很多方法可以做到这一点 - 我在下面为您提供了一个非常精简的解决方案。您需要进行许多调整才能使此跨浏览器兼容、改善间距等,但这应该让您了解如何布置元素的基本想法:
There are many ways to do this - I have given you a very stripped-down solution below. There are a number of tweaks you need to do to make this cross-browser compliant, improve spacing, etc., but this should give you the basic idea as to how you can lay the elements out:
与之前的答案大致相同,我为您提供:
CSS:
html:
演示地址:http://www.davidrhysthomas.co.uk/so/formCols.html
此解决方案确实使用了 CSS3(
nth- child(odd)
),这限制了它的跨浏览器友好性(尽管可以在 Ubuntu 10.04 上的 Opera、Chrome、Safari 和 Firefox 中使用),因此为了 IE 友好性,您必须显式添加类名您想要浮动:右侧
的列。Much the same as the previous answers, I offer you:
CSS:
html:
Demo at: http://www.davidrhysthomas.co.uk/so/formCols.html
This solution does use CSS3 (the
nth-child(odd)
), which limits its cross-browser friendliness (though works in Opera, Chrome, Safari and Firefox on Ubuntu 10.04), so for IE-friendliness you'd have to explicitly add a class name to whichever column(s) you wanted tofloat: right
.