下面做个简单页面示例一下: 没有隐藏文字时内部的div中的文字不换行但是不会被隐藏掉:
在把背景图片加上图片: 此时文字应该在图片上面:
现在把用首行缩进的方式把文字向左移动50px: 添加text-indent:-50px; 注意此时文字超出了自己的div来到了父元素(div)中,由于没有超出隐藏所以还正常显示。红色边框为子元素,外部白色背景的是父元素div。
下面加上超出隐藏:overflow:hidden;这时超出的那部分文字被隐藏了。
现在把text-indent;-9999px;使它尽可能完全超出div完全被隐藏。注释: 1 这里text-intdent:-9999px;是为了尽可能让文字完全超出div而被隐藏,其实你只需要超出200px(在这个示例中)就可以,但是div的大小一旦改变就可能不能完全隐藏,所以设置的值要尽可能的大。 2 white-space: nowrap;文字不鞥呢换行,道理一样不能确定div宽度。宽度大与文字的宽度就不会换行,但是小于就会换行。所以最好直接设定不换行。
