html dd元素中没有换行符

html dd元素中没有换行符,html,css,image,list-definition,Html,Css,Image,List Definition,我试图得到图像标题,这是一个dd元素打破,所以它是一样的宽,因为它的dt元素。我不想使用宽度,使用display:inline和float:left不起作用。我这里有代码和示例:。我正在使用Firefox9进行测试 我现在能想到的唯一解决方案是使用javascript测量dt元素并将宽度设置为dd元素 提前感谢您的帮助和建议。能否为dl元素添加宽度?如果你想保持HTML的结构而不使用最大宽度,我敢说这是不可能的,原因如下: 您希望img对象约束dd元素。但是,这两个图元都是兄弟图元,只能由其父图

我试图得到图像标题,这是一个dd元素打破,所以它是一样的宽,因为它的dt元素。我不想使用宽度,使用display:inline和float:left不起作用。我这里有代码和示例:。我正在使用Firefox9进行测试

我现在能想到的唯一解决方案是使用javascript测量dt元素并将宽度设置为dd元素


提前感谢您的帮助和建议。

能否为
dl
元素添加宽度?如果你想保持HTML的结构而不使用最大宽度,我敢说这是不可能的,原因如下:

您希望
img
对象约束
dd
元素。但是,这两个图元都是兄弟图元,只能由其父图元在宽度方面进行约束(或者,可以通过其子图元拉伸图元)。因此,
dd
将根据需要扩展,因为父元素没有限制它

当然,这可以通过设置父元素的宽度来解决,但是您已经提到,您不希望这样做,因为图片将具有不同的大小


因此,不幸的是,除非您更改HTML结构,否则在没有JavaScript的情况下这是不可能的(除非我在这里遗漏了一些明显的东西)。

对图像和标题使用
dl
标记是人为的,不会使样式设置变得更简单。解决此问题(使标题与图像一样宽)的唯一方法似乎是使用带有
标题
元素的单单元格表,而不需要显式编写脚本或设置图像宽度,请参见和。例如:

<table class="photo">
    <caption align="bottom">Image Caption with a very very very very very long    
     text</caption>
    <tr><td>
        <img title="" alt="" src="http://dummyimage.com/120x100/82d91f/fff">
    </td></tr>
</table>  

带有非常长的图像标题
文本

图像宽度可能不同,因此我不想使用宽度。但我不确定这是否可行。如上所述,我的最后一个方法是像在示例中那样设置宽度,但使用javascript动态设置宽度。正如你所说,除非你知道宽度,否则我不认为仅使用html/css就可以实现这一点。我只是想,通过添加一个
max width
(比如200px)的折衷方案如何?这看起来更难。您需要支持IE7吗?是的,IE7支持是必需的,您是对的,它比看起来更难。我已经用一点javascript解决了我的问题,正如我所看到的,我知道其他解决方案,但不改变html。我想在不改变html的情况下解决这个问题。谢谢你的链接,下次我会继续看的。谢谢。我给了这个答案,因为它符合我的想法和发现。事实上,我已经用javascript解决了这个问题。