使用 CSS 将元素的宽度设置为“0”(不是绝对定位)
Set width of element to "0" (not absolute positioned) with CSS
我有一个元素,即使我定义了 "max-width=0" 它也有 4px 的宽度,看图:
当我将元素定位为绝对时,它消失了,但由于 css 过渡(徽标在向下滚动 > 250px 时滑入)我无法将其定位为绝对。
这是CSS:
#page-wrap.oben ul#menu li.menutext {
padding: 0;
line-height: normal;
overflow: hidden;
}
#page-wrap.oben li.menutext a {
font-size: 24px;
max-width: 0;
opacity: 0;
vertical-align: middle;
-webkit-transition: all .6s;
-moz-transition: all .6s;
-ms-transition: all .6s;
-o-transition: all .6s;
transition: all .6s;
}
这是 HTML:
<li class="menutext biggerfont">
<a href="#">
Schooool!
</a>
</li>
这是因为您的 </li><li>
元素之间有一个 space。如果您删除关闭和打开 li 之间的白色 space,这将消除间隙。
例子中,在float:left;
中设置li
修复,不知道是不是你要的
这是由于 display: inline-block;
的工作方式所致,因此您有以下选择:
改用浮点数
这会将元素直接堆叠在一起。
ul#menu li {
float: left;
}
设置ul
的文字大小为0,然后在li
中指定高度
这将意味着inline-block
留下的空隙不占用任何space,所以同样的效果
ul#menu {
font-size: 0;
}
ul#menu li {
font-size: 12px;
}
更改您的 HTML 标记
<li>
元素之间的新行是导致此问题的原因。如果您不想更改 css,则删除结束标签和开始标签之间的换行符将具有相同的效果,并允许您继续使用 inline-block
<li>item</li><li>
Item2</li><li>
Item3</li>
None 已在您的示例中进行了测试,但任何解决方案都应该适合您。 float
示例可能会导致不同的问题,具体取决于容器的设置方式。
我有一个元素,即使我定义了 "max-width=0" 它也有 4px 的宽度,看图:
当我将元素定位为绝对时,它消失了,但由于 css 过渡(徽标在向下滚动 > 250px 时滑入)我无法将其定位为绝对。
这是CSS:
#page-wrap.oben ul#menu li.menutext {
padding: 0;
line-height: normal;
overflow: hidden;
}
#page-wrap.oben li.menutext a {
font-size: 24px;
max-width: 0;
opacity: 0;
vertical-align: middle;
-webkit-transition: all .6s;
-moz-transition: all .6s;
-ms-transition: all .6s;
-o-transition: all .6s;
transition: all .6s;
}
这是 HTML:
<li class="menutext biggerfont">
<a href="#">
Schooool!
</a>
</li>
这是因为您的 </li><li>
元素之间有一个 space。如果您删除关闭和打开 li 之间的白色 space,这将消除间隙。
例子中,在float:left;
中设置li
修复,不知道是不是你要的
这是由于 display: inline-block;
的工作方式所致,因此您有以下选择:
改用浮点数
这会将元素直接堆叠在一起。
ul#menu li {
float: left;
}
设置ul
的文字大小为0,然后在li
这将意味着inline-block
留下的空隙不占用任何space,所以同样的效果
ul#menu {
font-size: 0;
}
ul#menu li {
font-size: 12px;
}
更改您的 HTML 标记
<li>
元素之间的新行是导致此问题的原因。如果您不想更改 css,则删除结束标签和开始标签之间的换行符将具有相同的效果,并允许您继续使用 inline-block
<li>item</li><li>
Item2</li><li>
Item3</li>
None 已在您的示例中进行了测试,但任何解决方案都应该适合您。 float
示例可能会导致不同的问题,具体取决于容器的设置方式。