(资源: sontag.ca)
第一部分
可以使用2个HTML表(一个嵌套在另一个中,甚至只用一个表)来非常简单地完成此布局。
也可以使用CSS来完成,尽管可能需要更多的思考。
这可能不是现实世界的布局,但我看到了相似的页面。认为这是一个谜。锻炼您的CSS技能的练习。
为了使事情变得更有趣,我在一个名为The Challenge的分为两部分的网页中对该问题进行了框架化。我们将检查代码和问题:使用表还是CSS进行布局?,并排,逐击,因为我们的两个对手为代码至上而战。
第一部分阐述了挑战的产生。我希望你喜欢。
第二部分是决策。 您可能会感到惊讶。
第二部分
发布后仅几分钟,我很快就收到了如此迅速的回答,真让我感到惊讶。这是一次令人沮丧的经历。我不希望与您竞争计时赛。
但是,话虽这么说,在仔细检查了所提供的解决方案之后,我才意识到,没有一个CSS解决方案(包括当时的我自己的)和所提供的任何一个表解决方案一样有效。挑战在于CSS优于任何表格布局解决方案而言,。
因此,我添加了3条新规则(请记住,其中一条规则是可以更改的规则)。这使某些人感到恼火。因此,我随后添加了一些有关为什么更改规则的精彩解释。我认为这使他们更加恼火。
- 我们的花园要围着篱笆。使它与可能遇到的沉闷环境区分开的东西;而且不太贵,但易于保持清洁。所以我想要花园周围有一个1像素的黑色边框
- 每个花园地块(字符)上的居民必须为黑色或白色,具体取决于哪个显示出他们的花园中最好的。而且它们都是草书血统。它们之间没有斜体。;-)
- 花园是可重定位的,也就是说,我可以在页面上的任何位置(没有绝对定位)拥有这个花园。
这是最终输出的样子(背景颜色可选):
(来源: sontag.ca)
我对反复无常和最后一分钟的规则表示歉意。我错了 每个花园地块的居民都是手工制作的手工匠人。他们是草书家族的后裔,他们的风格感归功于斜体。
花园必须可重定位,因为两种花园(表和CSS)都需要在同一页面上共存。我可能会说错position:absolute
不允许使用规则。如果您可以让他们在这种情况下工作,那么您将获得更大的权力。他们一定会被接受。
我要求在地块周围设置围栏,因为每种花园类型都将种植在橙色背景的乡村中,该乡村背景与我们所种花朵的颜色非常相似。
我现在住在荷兰,郁金香季节快到了。如果您在接下来的几周内飞越荷兰,而且天气晴朗(这里很少见),那么您下面的风景将看起来很像这项愚蠢的练习。
我并不喜欢橙色,但我喜欢并欣赏荷兰人,所以这就是为什么我们有橙色背景,以向东道国致敬。:-)
第三部分
我已经将《挑战》中的Ted的表格答案与这张图片一起发布了
(来源: sontag.ca)
因为可以轻松地将居住者添加到花园中,而无需触及CSS规则-一切都会自动居中。
你能用 CSS 做到吗?你能用...鲱鱼砍掉森林里最强大的树吗?
更新:查理的答案在这里。