css如何让两个div在一行显示

两个div放在一个大div里面 其中第一个div放在左面 并左浮动,右侧的div宽度不限制,不限制的原因是因为第一个div里面的img标签有可能没有。所以当没有的时候就让右侧的div充满整个大div的区域

html
<div class="tra_main">
<div class="tra_tu"><img src='/images/pic.gif' width='125' height='114' /></div>
<div class="tra_p">
<h3><a target="_blank" >标题</a></h3>
<p>内容</p>
</div>
</div>
css
.tra_main{width:687px;overflow:hidden;padding:20px 0;background:url(../img/Nature_04.gif) repeat-x bottom;}
.tra_tu{width:132px;float:left; padding-left:20px;}
.tra_p{float:left; padding-left:20px; }
.tra_p h3{width:490px;overflow:hidden;line-height:30px;background:url(../img/index_12.gif) no-repeat left center;padding-left:20px;}
.tra_p h3 a{font-size:14px;font-weight:bold;}
.tra_p p{font-size:12px;line-height:22px;color:#333;}

CSS里的float配置,值为left,表示顺序靠左,值为right,表示顺序靠右。至于margin-right:-200px,这个只是因为a的width设置为100%,为了不出现换行的情况,那么就必须让b这个DIV有空间,而b的width刚好是200,设置了这个margin-right后,刚好满足了b的需求。
以上回答你满意么?追问

你在说啥呢?

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-11-14
可以有这个思路;
左右两边都设置最大宽度就好了。
左边DIV 宽度最大不超过多少(max-width:XXXpx;)。。。然后 右边那个 就百分比就可以了追问

这样是不是有兼容性问题

追答

有,IE8以下不支持。

追问

如果右边设置百分比的话,当左侧没有img标签时,就无法充满整个大div

追答

你的意思就是 右边的宽度完全需要取决于左边咯。
左边大就右边小,左边小或者没有了,右边也就相应大。。

你这个问题有点麻烦耶。。
我能想到的就者有这个了,,但是应该能解决,得自己写一个测试才行,
都设置百分比,都设置 max-width

让所有浏览器都支持max-width的CSS样式代码:
max-width:1000px;_width:expression((document.documentElement.clientWidth||document.body.clientWidth)<1000?"1000px":"");overflow:hidden; 这里的1000和1000px是你需要的数值,注意3个数值的相同。

本回答被网友采纳
相似回答