跳转到主要内容
东方龙马 提交于 12 October 2012

本文作者:为之 (w3cplus - drupal社区团队

第一个是drupal7的变量tabs

在文章里面,如果匿名用户是看不到tabs的,但是drupal7的默认主题bartik或是stark都会输出

也就是说只要应用了上面的那个if(tabs)来做判断,其实得到的都是ture,即使没有权限看到tabs也还会输出一个空标签,要知道这个空标签是设置了margin-bottom的。

解决方法一:

按照tao里面的主题,不使用tabs这个来判断,而是分别对一级,二级进行判断

不过这个得在template.php里面定义这两个变量

解决方法二:

根据上面的方法,把if(tabs)改成if (!empty($tabs['#primary'])),这个是由流云提出来的方法

第二个是清除浮动的问题

Drupal7清除子元素的浮动使用的是clearfix,在module/ssystem/system.base.css第251行我们可以找到这个代码:

这个清除浮动因为设置了content:".";里面有个点,所以会产生一些bug,

当然我们不好直接在这里改,所以我们有必要在我们使用的主题里面覆盖掉这个,content里面为空就好

当然我们还有其他清除clearfix的方法,请参看http://www.w3cplus.com/code/310.html

其实大家觉得怎么在默认的主题里面都没有发现这个bug呢,其实最主要的原因在这里,默认的主题bartik对footer-wrapper的padding设置了一个比较大的值

亲爱的,如果你们把这个footer-wrapper的padding-bottom去掉了,这个clearfix产生的bug,就可以看出来,这个时候你可以用firebug选择body元素,然后你拉到最底端,就会看到一段空白的间距。如下图

 

标签