【发布时间】:2014-05-08 19:32:31
【问题描述】:
背景
当谈到 CSS 时,我是一个真正的绿豆(就像我一周前开始的那样),并且被分配了构建我们公司主页的任务。提醒:我在 Web 开发方面的经验为 0,当我说 0 时,我的意思是一周前我认为 CSS 是设计界面向对象编程的术语,而不是你实际编写和编码的东西。但是通过 SO/WC3/Google 学习新事物很有趣,但我遇到了一个我无法掌握的问题。
问题
我们使用 Joomla 作为开发工具包,特别是 Beez_20 模板。作为我遇到的问题的参考,我上传了一张图片here。括号显示它位于哪个css文件。我想将横幅(div.logoheader)放在菜单(ul.menu)旁边和下方,并避免它们之间的空白(这是div.header的背景) )。我已经看过几篇关于如何使用 position:relative 和 position:absolute 的帖子,但是当我将 css 代码放在单独的 css 文件中时,我无法让它工作。
反复试验
到目前为止,我所做的是进行以下更改:
- 删除了最大宽度,以便菜单和背景延伸到整个页面
- 把 div#line 位置:absolute;使其始终位于页面顶部
- 将 ul.menu 位置:relative 和 top:35px left:-10px 放在 div#line 的正下方(为什么这不是 0 0 我不知道,但它是这样工作的)
- 把div.logoheader的位置:相对;
我尝试在相对和绝对之间切换,但似乎无法正常工作。我总是在 logoheader 和 ul.menu 之间有一个空白。我看到的技巧是同时使用相对和绝对,但是当图像和元素位于不同的 css 文件中时,我不知道如何解决。
其他
我注意到如果我将 div#line 位置从绝对更改为相对,ul.menu 就会消失。 div#line 然后在 div.logoheader 的底部结束。如果我注释掉 personal.css 和 position.css 中的部分,其他元素仍然保持在相同的位置。
我认为这不是你在 CSS 中解决的问题,但你应该进入 PHP 文件,但这只是我在黑暗中刺伤。感谢您在此问题上获得的任何帮助,如果需要其他信息,请告诉我。
编辑:固定链接
【问题讨论】:
-
图片链接失效。
-
修复了链接,现在应该可以使用了!
-
谢谢。好的,
div.logoheader是否有上边距,如果您在 Chrome 开发工具之类的工具中检查元素,您可能会更好地了解为什么存在空白。或者ul-menu有一个底部边距,这也会将 logoheader 向下推 -
div.logoheader 有以下内容: position: relative margin: 0em 0px 0px !important 在personal.css 文件中。在 position.css 文件中,它没有任何填充或边距。编辑:据我所知,ul.menu 既没有填充也没有边距。
-
如果您真的在使用 Beez_2,可能值得花钱购买由创建 Beez_2 的 Angie Radtke 编写的关于 Joomla 模板的书。