Yahoo的YUI项目有一些非常好的,经过良好测试的组件,我刚刚开始集成到我的(固定宽度)站点。我实际上非常兴奋 - 我已经暂时离开了面向消费者的网站创建一段时间了,我很高兴看到过去几年里开发的内容。
非常喜欢YUI组件和reset.css - 我认为我对Yahoo YUI grids.css的使用并不是一件容易的事。事实上,他们说自己卖得很好:
“合并页面宽度,模板 预设和嵌套网格,几乎 无限多的复杂页面 布局是可能的“
(来自上面的grids.css链接)
但是我试着做一些非常简单的3列布局,似乎无法做一些基本的事情 - 也没有在文档中找到如何做的好解释。
例如:
yui-t1
模板吗?
yui-t1
选择器但最终得到了多个具有相同id的div,这让我相信我做错了什么。我的网站更多是“设计驱动” - 这就是说需要制作一个页面的photoshop标记。
到目前为止,我的印象是,YUI Grid适用于更多“内容驱动”网站,在这些网站中,您可以获得新闻内容,而这些内容不一定适合精确的设计。这是一个公平的陈述 - 还是我错过了一些使用grids.css的魔术?
我是否更适合使用具有固定定位的替代网格?
Alternatives to YUI - 如另一个stackoverflow帖子中所提供的
答案 0 :(得分:8)
这个答案由Nate Koechley在YUI forum提供 - YUI团队YUI高级工程师
我建议人们不要直接触摸作为网格骨架的节点。当然,欢迎您,但正如您所注意到的那样,它会影响他们的稳定性和行为。
并且
我认为最好将Grids的节点保留为未触及的骨架,将您的内容标记放在该结构中。这是一些额外的标记,是的,但我认为它是封装因为你的内容可以自由而安全地独立于网格移动。
我希望对想要使用YUI网格的人有用
<强>更新强>
假设这里有一些yui-grid标记
<div class="yui-g">
<div class="yui-u first"></div>
<div class="yui-u"></div>
</div>
并且您想要添加一些额外的保证金。正如Nate所说,添加一些额外的标记
<div class="yui-g">
<div class="yui-u first">
<div class="specialCss">
your content goes here
</div>
</div>
<div class="yui-u">
</div>
</div>
并定义其边距,填充等......
.specialCss {
margin:10px;
}
这样就不会影响YUI CSS网格的稳定性和行为
答案 1 :(得分:6)
您可以通过覆盖margin属性来更改装订线。您可以通过覆盖像.yui-gb {}之类的选择器或您正在使用的任何布局来全面完成此操作。如果你只想做一个特定的列集,你可以添加另一个类并使用它,只需确保你具有比YUI规则更多的特异性(或者使它们相同,并且你的规则在CSS文件中更低)。
我不认为这些模板是可嵌套的,因为它们被设计成一个快速的东西来做一整页。
网格的创建方式专门用于满足我们获得的页面大小,这些页面由我们自己的UED指南和广告格式制定。没有什么可以阻止你使用框架作为基本和覆盖确切的宽度/排水沟等。
免责声明:我为Y工作!
答案 2 :(得分:1)
听起来你需要对YUI网格的默认设置进行大量自定义,对我来说,这有点半失败了使用它 - 或者更确切地说,使其不那么灵活,从而降低效率。
你看过Nate Koechley的演讲了吗?从记忆中我认为他确实提到可以改变列之间的装订线并解释如何进行自定义。
http://developer.yahoo.com/yui/grids/
基本上,您可以深入了解网格的CSS文件,并确定列之间的装订线设置位置,并在您自己的CSS文件中进行调整。
答案 3 :(得分:1)
只是想提一下,在新的YUI 3网格中,有一个关于如何指定网格间距的具体示例。
http://developer.yahoo.com/yui/3/examples/cssgrids/cssgrids-units.html
答案 4 :(得分:0)
如果您确实研究了YUI的替代方案,请查看Blueprint CSS Generator(http://kematzy.com/blueprint-generator/)。这是一种自定义CSS网格的快捷方式(基于Blueprint CSS)。
不幸的是,我不知道YUI是否有类似的工具。
答案 5 :(得分:0)
YUI 3 grids功能强大。灵活,稳定且简单。看一看。