Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: display:inline скрывает элемент
 
 автор: dump   (18.02.2012 в 07:10)   письмо автору
 
 

Вот код:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
    <title>Shop</title>
    <link rel="stylesheet" type="text/css" media="all" href="dump.css">
</head>
<body>
<div id="one">
</div>
<div id="two">
</div>
</body>
</html>


Вот css:

body {margin: 0px; }
#one {height: 50px; width: 100px; background: orange; margin: 0px;}
#two {height: 30px; width: 100px; background: green; margin: 0px;  display: inline;}


Второй див просто исчезает вместо того, чтобы переместиться вправо. Почему?

  Ответить  
 
 автор: Sfinks   (18.02.2012 в 11:52)   письмо автору
 
   для: dump   (18.02.2012 в 07:10)
 

> Второй див просто исчезает
Потому что inline означает что это больше не блок, а строка. А у строки не задается ширина и высота. Они вычисляются по ширине и высоте содержимого. А содержимого у вас ноль. Поэтому и ширина и высота 0.
Напишите <div id="two">lsdajkfghsjdfhglsjkdfhglksdfg</div> и он появится, но не так как вы ожидали. Чтоб ему можно было задать ширину и высоту он должен быть inline-block

> вместо того, чтобы переместиться вправо
А почему он собственно должен переместиться вправо? Он будет под #one, т.к. display:block по умолчанию означает, что он занимает всю строку. Отображается он может и не на всю строку, но на той же строке что и он больше ничего располагаться не может. Если вы хотите, чтоб #two был справа от #one, то для #one нужно еще прописать float:left

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования