我有this并且它有一个HTML img#logo-image
,在某些情况下它不会显示display:none
。
问题是整个div#menu-title
应该适合页面的宽度。
我尝试了width:100%
,但是当显示img#logo-imag
时,它会将该行划分为img#logo-image
以下。
width:100%
不适用于元素float:left
答案 0 :(得分:3)
只需取消菜单标题div并删除宽度..它将自动为标题的100%然后..如果图像存在,它将调整ul#menu
列表为其腾出空间,这是一种自然行为
如果您希望菜单列表实际上只占用可用的宽度(例如背景颜色或某些内容,那么您可以将overflow: hidden;
添加到ul#menu
- 尽管我认为不需要在您的示例代码中
这是你的小提琴的简化版 - 悬停在标题上以使图像消失并看到ul#menu
调整以适合
答案 1 :(得分:2)
左侧有徽标图片和菜单标题。因为它们不是真正在单独的div中,它们都是同一个div的一部分,它们彼此相邻。最重要的是,您将菜单标题设置为760,这不是页面的宽度。至少看起来你做了什么。不要使用100%的宽度,因为调整页面大小会缩小菜单标题。
你真的只需要玩div,但我会说将这两个div分开会使你能够将它们叠加在彼此之上或之下。
在使用Chrome的检查元素功能时,我没有看到显示:无图像的css。我不知道为什么那样做。
答案 2 :(得分:0)
我真的不确定你要做什么,因为制作div#menu-title width:100%不会在同一行留下任何其他空间。
为什么不让它们都内联并让宽度成为他们需要的任何东西?
无论如何,我猜你想要什么。您希望这两个元素表现为表格,表格行内部以及表格单元格中的每个元素,以便图像占用最大宽度,div#menu-title占据所有其余部分。在这种情况下,将它们放在一个表格中,或者使用display:table-cell表示图像和div并随之摆弄它。