CSS как расположить рядом 2 элемента
2) можешь их абсолютно спозиционировать в соответствующем блбоке.
Ни один из вариантов задачу не решает.
<div style="width: 100%;background-color:green;height:200px;">
<div style="width: 100px;background-color:red;height:200px;float:left">левый</div>
правый
</div>
первый - шириной по контенту-тексту
<div style=" width: 100px; background-color:red;height:200px;float:left">левый</div>
косяк
Хотя следующим шагом ты наверное доебёшься до того что дивы в зелёный и красный цвета покрашены....
по стандарту, если у элемента выставлен float, то ему необходимо задать width
ну или min-width, который мало где работает
Ссылку в студию
А хоть немного подумать головой ты можешь? Если уж ты даже нашёл width:100px, то тебе не должно составить труда это стереть.Мне по этому вопросу ничего думать не надо, я и без тебя прекрасно знаю как и что делать. Но отвечать в таком духе - настоящее мудачество. И не надо тут про зелёный с красным подъёбывать, не дети. Если такая подсветка очевидно дана для примера, то определение стилей может нести скрытый характер. Этот кусок кода может кого-то ввести в заблуждение, этот кто-то может его забрать, вставить, посмотреть как отображается в internet explorer (в нём при увеличении "жёсткой" ширины контента содержимое правой части страницы по крайней мере корректно отодвинется и доверившись твоей адекватности пойти дальше, не догадываясь, что в фаере и опере с отображением настоящий пиздец. Да, вина в этом его, что не хочет думать и проверять самостоятельно, а чрезмерно доверяет таким как ты, но ты мог эту ошибку исправить лёгким движением руки, чего не сделал по понятной причине, какую я уже обозначил: "отвечать в таком духе - настоящее мудачество".
Хотя следующим шагом ты наверное доебёшься до того что дивы в зелёный и красный цвета покрашены....
ps под автором имею ввиду не топикстартера, а вообще, где-либо, кого-либо задающего аналогичные вопросы.
Мест из-за которых в лисе должен был начаться пиздец не нашел.
Подумал, что я чего-то не догоняю и может автор поста знает больше чем я. Проверил.
Однако же нет - пиздеца все равно обнаружено не было.
Вывод - автор написал херню, не проверив свои слова на экспериментально.
Любое абсолютное значение в диве с width: 100px ни к какому пиздецу, ни в лисе, ни в ИЕ не приведет.
а ты вставь картинку бОльшей ширины чем задана и посмотри что произойдёт и там и там.
А да, сорри. Об этом варианте не подумал.
Но.
Лично мне проще написать width:100px для определения хоть-какой то ширины в этом примере чем морочиться с неразрывными пробелами (или даже с картинкой когда я этот код пишу на странице ответа нашего форума. К тому же топикстартер (если меня не обманывает память) достаточно адекватный человек и вполне способен разобраться с этой жёсткой шириной, т.к. однозначно заметно что это сделано для лучшей визуализации решения.
И вообще если человек начинает морочится с дивовой вёрсткой то из этого следует что он хоть что-то соображает и способен не лажанутся как ты описал
Предлагаю прекратить этот бессмысленный спор с наездами друг на друга, так как ответ на вопрос дан и чётко описан
ps с наездами вопрос закрыт, забираю свои слова этого плана обратно.
но раз вы пришли к согласию то и ладненько
а как мне терь в правый див положить контент?
конкретней: див с бордером, речь не про ие
неработающий пример:
<div style="width: 100%;background-color:grey;height:300px;border:5px solid blue">
<div style="background-color:lightgray;height:200px;float:left;border:5px solid green">левый и очень левый</div>
правый и очень правый
<div style="background-color:yellow;height:50px;border:20px solid red">ой, у меня красная рамка уезжает влево :(</div>
</div>
Вообще, всё реже и реже касаясь вопросов вёрстки, отхожу от тонкостей с отображением элементов при разных определениях doctype, так что тут надо непосредственно экспериментировать с кодом, по времени - пять минут, но в лом, оставляю эту возможность тебе
Да, ещё один важный момент по вышесказанному. Следует помнить, что если высота левого дива окажется выше правого, то очевидно и правая рамка заданная бэкграундом уедет ниже, чем высота правого дива. Поэтому, если в конкретно твоём примере это актуально, то правую рамку имитировать следует ни в корневом диве, а в ещё одном вложенном в тобой добавленный. Ну и понятно, что высота этого дива с рамкой будет независимой от высоты левого, а всегда ограничиваться контентом. То есть полной аналогии с таблицей всё равно не получаем.
То есть полной аналогии с таблицей всё равно не получаем.Ну, добавлю ещё немного. В таблице в ячейках можно задать разный цвет фона, и он естественно всегда будет заполнять 100% как по высоте, так и по ширине. А здесь, в блочной структуре этот номер не универсален, прокатит лишь с ограничениями. Например, когда заведомо известно, что растягиваться по высоте будет только из блоков, правый или левый, и никогда не будет меньше высоты второго. Тогда соответственно можно корневому задавать один цвет, а растягивающему другой. Ну я это впринципе и описал выше с бордером, если реализовывать его как бэкграунд, только не на пальцах, так сказать
ширину бы добиться
чтобы при этом соблюдалось изначальное правило: левый растянут по контенту
что паддинг что марджинг что бэкграундная картинка
ничего не поможет границу нормуль сделать соблюдая это правило
Единственное, что может помочь (но я не уверен, что поможет таки это конструкция вроде
HTML:
<div id="box">
<div id="left"></div>
<div id="right"></div>
</div>
CSS:
#box {
dyspaly: table-row;
}
#left, #right {
dyspaly: table-cell;
}
Т.е. попытка собрать таблицу на коленке.
да, предыдущий пример совсем негоден, если более детально задуматься. Если контента в правой части будет много, больше чем в левом, так там совсем всё ломается. Непростую задачу автор выбрал, в лоб вот так красиво не решишь, разумность такой реализации на дивах вообще встаёт под сомнение, стоит ли оно того, и в какие дикие баги на конечном продукте это может вылиться. Хотя если заморочиться, то под конкретные требования с жуткими огриничениями можно найти способы...
Попробуй так.
В фоксе ваще ппц твориццо
Если что, то вообще-то это три разных примера, а не одна "таблица".
Зачем - непонятно
Не вся же вёрстка на таблицах не труъ, если таблица используется не как таблица с данными (строки и поля) - это ещё не значит, что надо переписывать на дивах
но вроде работает
да ты крут!
разумность такой реализации на дивах вообще встаёт под сомнение, стоит ли оно того, и в какие дикие баги на конечном продукте это может вылиться. Хотя если заморочиться, то под конкретные требования с жуткими огриничениями можно найти способы...йоу
ты описал то ради чего я топик создавал
Ну и изврат... Уж лучше таблица...
В конце концов, качество имеет куда более высший приоритет, чем предубеждения насчёт правильности/неправильности кода и соответствия рекомендациям. Хотя их суть и сводится в основном к качеству. Любой профи сделает на таблицах такой сайт, какой на порядок превзойдёт сделанный любителем на дивах, и все недостатки, привязанные в кучах статей к таблицам, сведутся к нулю. Ну а блочная вёрстка, конечно же оправдана, если работает по ней мастер и конечный результат будет практически идеален. В противном случае, какой смысл делать ужасный конечный результат на дивах, вместо довольно опрятных на таблицах. Вёрстка этого форума вас напрягает? А если чисто теоретически представить его реализацию на дивах? Да это просто анриал, такое тут творилось бы, что считай его и не существовало бы вообще.
Оставить комментарий
pitrik2
без таблиц можно как-то по простому сделать?нужно рядом два элемента расположить
первый - шириной по контенту-тексту
второй - шириной по всему оставшемуся месту
ну тоесть нужен аналог:
<table><tr>
<td>ляляля</td>
<td width="100%"> </td>
</tr></table>