Javascript 在添加新元素时,是否可以使列内没有宽度的可滚动div保持与列相同的宽度?
我有一个简化的结构: 我想要的是,当我在列中添加绿色div时,棕色div将与列的宽度保持固定,而不管它们的长度如何。所以,当我调整页面大小时,它应该随着表格和列一起拉伸和收缩,但当长内容添加到页面内部并添加滚动条时,它应该保持固定。但它不起作用:所有浏览器都没有向brown div添加滚动条,而是拉伸div及其父表以适应新添加的元素,从而违反了表和列的宽度属性。下面是一个示例代码:Javascript 在添加新元素时,是否可以使列内没有宽度的可滚动div保持与列相同的宽度?,javascript,html,css,Javascript,Html,Css,我有一个简化的结构: 我想要的是,当我在列中添加绿色div时,棕色div将与列的宽度保持固定,而不管它们的长度如何。所以,当我调整页面大小时,它应该随着表格和列一起拉伸和收缩,但当长内容添加到页面内部并添加滚动条时,它应该保持固定。但它不起作用:所有浏览器都没有向brown div添加滚动条,而是拉伸div及其父表以适应新添加的元素,从而违反了表和列的宽度属性。下面是一个示例代码: <script type="text/javascript"> function fu() {
<script type="text/javascript">
function fu() {
var d=document.createElement('div');
d.style.backgroundColor='limegreen';
d.style.whiteSpace='nowrap';
var t = document.createTextNode("a;sdlkf asdof aposidfj pasij fpajfpad fpasd p a ds asdjfp jspfia sdpiajds fapdfklgpreogin vnzv.,zxvpvrepi dfvndpf nzd;bnz[obnrb oino");
d.appendChild(t);
document.getElementById("dqd").appendChild(d);
}
</script>
<table style="width:70%">
<tr>
<td style="align:right">Title:</td>
<td style="width:90%">
<div style="height:300px;overflow:auto;background-color:brown" id="dqd">
<div style="background-color: limegreen; white-space: nowrap">
LoL
</div>
</div>
</td>
</tr>
</table>
<button onclick="fu()">OK</button>
函数fu(){
var d=document.createElement('div');
d、 风格.背景色='limegreen';
d、 style.whiteSpace='nowrap';
var t=document.createTextNode(“a;sdlkf asdof aposidfj pasij fpajfpad fpasd p a ds asdjfp jspfia sdpiajds fapdfklgprogin vnzv.,zxvpvrepi dfvndpf nzd;bnz[obnrb oino”);
d、 儿童(t);
文件.getElementById(“dqd”).appendChild(d);
}
标题:
英雄联盟
好啊
您需要删除d.style.whiteSpace='nowrap';
,因为这是导致问题的原因。有关换行的文档,请参阅
如果您真的需要保留nowrap
,那么我建议将表布局更改为使用div
元素进行布局。一种可能的解决方案是我推荐的
函数fu(){
var d=document.createElement('div');
d、 风格.背景色='limegreen';
d、 style.whiteSpace='nowrap';
var t=document.createTextNode(“a;sdlkf asdof aposidfj pasij fpajfpad fpasd p a ds asdjfp jspfia sdpiajds fapdfklgprogin vnzv.,zxvpvrepi dfvndpf nzd;bnz[obnrb oino”);
d、 儿童(t);
文件.getElementById(“dqd”).appendChild(d);
}
标题:
英雄联盟
好的
你的问题标题太乱了……你能澄清一下吗?简单一点。你会很快得到答案的。但我希望每个条目都有一行only@mykola添加了这种情况的信息。我相信您必须将表中的div
元素更改为div
内部的div
。有关详细信息,请参阅它。好吧,使用float:left
作为标题div
,虽然在缩小页面时存在div重叠的问题,但它似乎可以正常工作,但没有那么严重。所以,谢谢!我将尝试重新设计我的页面,使用divs而不是table。