2012-04-15 1 views
1

Мне удалось создать div s, чтобы действовать как столбец таблиц. Однако теперь я хочу отступы между div. Если я что-то вроде этого:Div next other, width are percents, paddings breaks lines

<div style="float:left; width:100%;"> 
    <?php 
    foreach ($datas as $rec) { ?> 
    <div style="float:left; width:100%; background-color: green;"> 
    <div style="margin: 0px; float:left; width: 25%; background-color: red;"><a href="<?php echo $rec['HTTP']; ?>" target="_blank"><?php echo $rec['LINKNAME']; ?></a></div> 
    <div style="margin: 1px; background-color: yellow;"><?php echo $rec['DESCRIPTION']; ?></div> 
    </div> 
    <?php } ?> 
    </div> 

из margin: 1px разваливается. Как это исправить?

+0

Попробуйте установить DIV с зеленой шириной фона до 98% – Dale

+0

Я даже слышал, что –

ответ

1
<div style="float:left; width:100%;"> 
<?php 
foreach ($datas as $rec) { ?> 
    <div style="float:left; width:100%; background-color: green;"> 
     <div style="padding: 1px; float:left; width: 25%; background-color: red;"><a href="<?php echo $rec['HTTP']; ?>" target="_blank"><?php echo $rec['LINKNAME']; ?></a></div> 
     <div style="padding: 1px; background-color: yellow;"><?php echo $rec['DESCRIPTION']; ?></div> 
    </div> 
<?php } ?> 
</div> 
+0

так, если второй столбец имеет длинный текст, он продолжает следующую строку, под первой колонкой. Итак, первая колонка не растет –

2

Есть 2 решения я могу видеть этого:

  1. Задайте свой запас в процентах, например margin:1%;
  2. Используйте опцию CSS3 box-sizing, например.

webkit-box-sizing: border-box; /* Safari/Chrome, other WebKit */

-moz-box-sizing: border-box; /* Firefox, other Gecko */

box-sizing: border-box;