2015-05-04 2 views
0

У меня есть HTML код:элемент, расположенный справа перекрывает таблицу

<div id="right">right</div> 
<table> 
    <tr><td>row</td></tr> 
</table> 

с CSS:

#right 
{ 
    position: absolute; 
    right: 0px; 
    border: 2px solid #AAAAAA; 
    padding: 20px; 
} 

и в результате обе таблицы и деление с запуска в верхней части страницы, но я хочу таблицу, чтобы начать ниже div. Что я могу сделать с этим?

jsFiddle: http://jsfiddle.net/jrkno49u/

+1

Не используйте 'положение: absolute'? Затем поместите div после таблицы в HTML, где она принадлежит. –

+0

[Да, брось это] (http://stackoverflow.com/questions/30036170/element-positioned-to-the-right-overlaps-table#30036170) – potashin

ответ

0

Вы используете абсолютное позиционирование так взял DIV из потока. Следовательно, для таблицы div не существует. Для достижения желаемого: вы можете установить положение: относительное; для div & переместите поле соответственно справа, установив его свойство left в css.

0

Вы также мог бы сделать поплавок вместо абсолютного позиционирования, а затем снимите поплавок для таблицы:

#right 
{ 
    float:right; 
    border: 2px solid #ddd; 
    padding: 20px; 
} 
table { 
    clear: right; 
} 

http://jsfiddle.net/jrkno49u/2/

0

Вам нужно делать ничего больше. Просто удалите position: absolute; right: 0px; из #right

#right 
 
{ 
 
\t border: 2px solid #AAAAAA; 
 
    \t padding: 20px; 
 
}
<div id="right">right</div> 
 
<table> 
 
    <tr><td>row</td></tr> 
 
</table>

Проверьте Ваш updated fiddle.

Смежные вопросы