这应该是如此简单,但我无法让它工作。在HTML中定义div的宽度(设置最大宽度)
我有一个div,将包含谷歌地图上的一种工具提示(google.maps.OverlayView的实现)。要显示的文本量是可变的。它可以是单个(短)字或几个句子。 div的宽度最多应该是150px。如果整个文本需要小于150px来显示(在一行上),则div应该只根据需要尽可能小(即宽)。较长的文本应该分成几行,div最多为150px。
我认为所有需要做的事情(在CSS中)将设置“max-width:150px;”。但是这并没有达到我想要的效果(我在IE8中测试):文本在每个空白区域(!!)都会被破线,div的宽度小于150px。 (当我设置“宽度:150px;”当文字很短时,div比我想要的宽。)
为什么文本(当更长)不能填充最大宽度, ? (使用文字换行或文字换行的“四处游逛”并没有帮助。)
是否可以这样说:如果文本适合一行,请保持div尽可能窄,否则,不要使它宽度超过150像素?
任何帮助将不胜感激。
编辑
感谢您的答案/评论,但我的问题仍然存在。
我的CSS,unspectacularyl,看起来是这样的:
.TTWayPoint {
max-width: 150px;
border: 1px solid black;
padding: 3px;
background-color: lightyellow;
font: 8pt Verdana, Tahoma, "Microsoft Sans Serif", sans-serif;
}
的问题是,较长的文本得到打破在每一个空白(换行),即没有填充最大宽度。使用显示属性并没有帮助。
在我看来,这是一个IE8问题。 (我实际上正在开发一个具有Web浏览器控件的VB.NET应用程序; AFAIK,这意味着你正在使用系统上安装的IE版本,在我的情况下是IE8(不能在XP上更新)。)
我有点惊讶自己的第二个(发布一个错误的答案第一),但你的使用情况正常工作,这表现在[这个小提琴(HTTP: //jsfiddle.net/Curry/MXcuh/)。你的代码必须有其他问题。 –