Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.11.2010, 15:25
Аспирант
Отправить личное сообщение для decadent Посмотреть профиль Найти все сообщения от decadent
 
Регистрация: 15.09.2010
Сообщений: 30

Ширина содержимого
Есть DIV. В нем <h3>, у которого "width: auto", и он растягивается в соответствии с содержимым. И несколько <p>, которые располагаются под <h3>. И проблема в том, что когда я им выставляю width: auto, то они растягиваются до той ширины, которая выставлена заголовком. А мне нужно, чтобы их ширина зависела от их содержимого.

Как это реализовать? Подскажите пожалуйста.
Ответить с цитированием
  #2 (permalink)  
Старый 12.11.2010, 16:25
Аватар для vladlen
Кандидат Javascript-наук
Отправить личное сообщение для vladlen Посмотреть профиль Найти все сообщения от vladlen
 
Регистрация: 19.10.2010
Сообщений: 143

<p> - block элемент и всегда растягивается на всю ширину
__________________
Если хочешь что-то сделать - сделай это…
Ответить с цитированием
  #3 (permalink)  
Старый 12.11.2010, 16:30
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

decadent,
Зачем вам это???

Попробуйте заместо <p> использовать <span>
__________________
.
Ответить с цитированием
  #4 (permalink)  
Старый 12.11.2010, 16:48
Аспирант
Отправить личное сообщение для decadent Посмотреть профиль Найти все сообщения от decadent
 
Регистрация: 15.09.2010
Сообщений: 30

Skipp,

Все равно растягивается на всю ширину. Мне нужно чтобы элементы располагались в столбец. Соответственно я ставлю им display: block. И <span> тоже получается растянут.
Ответить с цитированием
  #5 (permalink)  
Старый 12.11.2010, 22:10
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

Сообщение от decadent
я ставлю им display: block.
Потому и растягиваются... Какой же это после этого спан? Только одно название...

Картинкой че ли покажи что нужно...
Ответить с цитированием
  #6 (permalink)  
Старый 13.11.2010, 11:19
Кандидат Javascript-наук
Отправить личное сообщение для Иваннн Посмотреть профиль Найти все сообщения от Иваннн
 
Регистрация: 31.05.2010
Сообщений: 106

decadent,
Я не знаю как в других браузерах, а в IE8 задай width заведомо меньше чем требует содержимый контент. В этом случае все пробелы в тексте делай &nbsp, либо задай соответствующее свойвство noWrap (какое значение на память не помню), а то текст будет переносится на строчку ниже пока ширина не станет равной самому длинному слову.
Или второй вариант, опять же гарантирую только раборту в ie8 :сделай p position:absolute, top, left, bottom, right, width должны быть auto, следующему элементу в HTML коде назначь margin-top равным высоте элемента позиционируемых элементов. Этот вариант имеет тоже свои недостатки-максимальная ширина p болше ширины содержащего элемента и др.
Ответить с цитированием
  #7 (permalink)  
Старый 13.11.2010, 13:52
Аватар для vladlen
Кандидат Javascript-наук
Отправить личное сообщение для vladlen Посмотреть профиль Найти все сообщения от vladlen
 
Регистрация: 19.10.2010
Сообщений: 143

Сообщение от Иваннн
Я не знаю как в других браузерах
Офигенный совет!
decadent, вы задачу описат можете, ничего не понятно что хотите сделать
__________________
Если хочешь что-то сделать - сделай это…
Ответить с цитированием
  #8 (permalink)  
Старый 13.11.2010, 17:28
Аспирант
Отправить личное сообщение для decadent Посмотреть профиль Найти все сообщения от decadent
 
Регистрация: 15.09.2010
Сообщений: 30

Сообщение от vladlen Посмотреть сообщение
вы задачу описат можете, ничего не понятно что хотите сделать
Есть <div> display: inline-block; position: relative; float: left; margin-top: 10px; margin-left: 10px;

В нем заголовок <h3> position: relative; display: block; В нем соответственно надпись, которая и задает ширину содержимого h3 и div.
При нажатии на заголовок загружается меню: несколько <span> друг под другом в одном столбце. Они тоже попадают в <div> где <h3> и растягиваются до ширины заголовка. Потому что чтобы они были каждый, под предыдущим им нужно выставить display: block. Я сделал так, что запихнул все span в отдельный div, и теперь у них ширина, как у самого широкого span.

Можно ли сделать так, чтобы у каждого из них ширина была по содержимому и все они были в столбец?
Ответить с цитированием
  #9 (permalink)  
Старый 13.11.2010, 21:24
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,225

decadent, вместо корявого описания просто сделай тестовый хтмл-файл, а его "внутренности" выложи тут.
Покажи картинкой что хочешьполучить в итоге... Вроде не сложно?
Ответить с цитированием
  #10 (permalink)  
Старый 15.11.2010, 00:23
Аватар для float
Профессор
Отправить личное сообщение для float Посмотреть профиль Найти все сообщения от float
 
Регистрация: 01.07.2010
Сообщений: 387

Цитата:
Можно ли сделать так, чтобы у каждого из них ширина была по содержимому и все они были в столбец?
<br /> tag may be?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить размер блока сразу после изменения его содержимого? Cooskon Events/DOM/Window 6 17.09.2010 16:15
Ширина таблицы Syltan (X)HTML/CSS 1 01.05.2010 22:33
ширина столбцов таблицы после загрузки bis Events/DOM/Window 1 26.03.2010 18:35
Получение текстового содержимого из всех вложенных DOM EmDmAl Events/DOM/Window 8 02.12.2009 23:38
Частичное изменение содержимого элемента kuhok Events/DOM/Window 28 07.09.2009 22:44