我有一个水平渲染的图像列表display:inline
和其他各种CSS,以使其工作。在图像行的末尾,我想要包含一部分文字。图像的水平排列工作正常,但是当我在最后添加这个“文本部分”时,我似乎无法将其显示出来。
这是fiddle。
最后一个<li>
元素是我用来追加文本的元素。尽管将font-size
,white-space
和line-height
恢复为正常设置,但下面的段落文字不会显示出来。
使用当前设置,隐藏文本的是什么?我怎样才能做到这一点?
水平图像在我测试的大多数浏览器中都能完美显示,因此我不想更改任何其他列表项样式属性;只是<li class="page">
和任何孩子。
修改:
我知道我已在font-size
标记上将0
设置为<ul>
。然而,这是必要的,因为内联元素需要彼此接触。唯一的方法是将font-size
和line-height
设置为零。
我现在可以看到这是一个font-size
问题,但我需要对<li class="page">
元素进行任何CSS更改/添加。更不用说在em's
中保持我的字体大小。
答案 0 :(得分:3)
我创建了一个working fiddle with the solution。
总结这里发生了什么,您在font-size: 0;
选择器上设置ul
,然后尝试重置font-size
选择器上的li
。
我通过将font-size: 0;
向下移动到ul li
选择器,然后将font-size: 1em;
放在ul > li.page
选择器上解决了问题。
您的错误是尝试重置ul
的孩子的字体,而ul
(父母)仍然指示font-size
将是0
。
以下是CSS的相关部分:
ul{
width:100%;
height:100%;
overflow-y:scroll;
white-space: nowrap;
line-height: 0;
}
ul li{
display:inline;
font-size: 0;
height:100%;
}
ul li img{
max-height:100%;
height:100%;
width:auto !important;
}
ul > li.page{
font-size:1em;
}
ul > li > div{
display:inline-block;
width:40%;
white-space:normal;
line-height:1;
vertical-align:top;
}
我希望这会有所帮助。
答案 1 :(得分:0)
您已为font-size:0
提供了ul
。请删除它然后它会工作!!
然后你也可以看到文字!! ;)
答案 2 :(得分:0)
在您的ul标签
中ul{
width:100%;
height:100%;
overflow-y:scroll;
white-space: nowrap;
line-height: 0;
font-size: 0;
}
你已经font-size:0px
所以只需将其删除,您的文字就会出现在图片的右侧