Jump to content
  • 0

Любителям блочной верстки на засыпку!


shamahn
 Share

Question

Ну, во первых, здравствуйте! ;)

Начал я совсем недавно пытаться верстать дивами. Не скажу, что получаю удовольствие, что были моменты, которых я бы не сделал таблицами, но тем не менее стремлюсь к прогрессивному. А теперь, уважаемые знатоки, вопрос:

2столбцовый макет. Ширина левого меняется произвольно (в зависимости от содержимого). Правый - от конца левого и до конца экрана.

С помощью таблиц - решается очень прозрачно. Хотелось бы увидеть, что существует такое же прозрачное решение и для дивов :)

Спасибо за внимание :)

Link to comment
Share on other sites

  • Answers 141
  • Created
  • Last Reply

Top Posters For This Question

Recommended Posts

  • 0

Подождите! Что же это за макет, ну для чего он нужен, вот если там какой нибудь нормальный текст в левой колонке будет, то правая зажимается полностью, в задании изначально предполагался не макет, а просто два слоя и при увеличении левого правый уменьшается. А макеты делаются так чтобы при вставке нормального текста вторая колонка не зажималась до упора и не кочевала под левую. Значит у каждой колонки должна быть блокирована максимальная ширина.ИМХО

Link to comment
Share on other sites

  • 0

shaman, в таком случае честно нихрена не понятно...

дайте пример табличной верстки, прямо так, как вы этого хотите, чтобы выглядело, тянулось, на div'ах, а то создается такое ощущение, что вы сюда пришли за online уроками.

Link to comment
Share on other sites

  • 0

Vindex10, слева может быть картинка, 1 буква, строка текста с запрещенным переносом. Ширина левой колонки изменяется в зависимости от содержимого.

Правая занимает всю оставшуюся ширину!!! Вот и все.

Таблицами делается просто. Нужно показать, что слоями это тоже делается, либо доказать обратное.

А вот тебе живой пример:

мне дизайнер подогнал макет. В нем есть один замечательный элемент - заголовок первого уровня. Представлен он как: текст заголовка слева и графический элементик, занимающий всю оставшуюся после заголовка ширину, и схематически можно изобразить как:

ТАКОЙ ВОТ ТЕКСТ ЗАГОЛОВКА /——————————————————————————-

где непонятная фигура справа - графический элемент (как мог так и изобразил) который вне зависимости от ширины листа в пикселах и ширины заголовка, должен начинаться в конце заголовка и тянуться до конца страницы (надеюсь за 2 раза станет понятнее)

Кроме как таблицей, я сломать эту головоломку не смог. Даю 5 баксов тому кто это рационально реализует не табличными элементами

Link to comment
Share on other sites

  • 0

Vindex10, коментарии были оставлены. Последнее решение вполне приемлемо. за исключением того что в ИЕ между левым и правым блоками есть разрыв, и при уменьшении ширины окна до ширины левого блока, правый блок прыгает на следующую строчку. Вот, собственно и все.

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

Вот он заголовок в нормальном виде:

h1.gif

Link to comment
Share on other sites

  • 0

Sotnikov, не оптимизированный для вэб jpg. Все исправлено, можете посмотреть.

Vindex10, специально, комментарии оставленные ранее:

jhhsdjfhaskjhfalksdhjflaskdjhflaksjhdfasdjhflkasjhfkljahfklajhfkashfklashfkalsjhflkashfkashkljlkjlj

Попробуйте это вставить вместо первого дива smile не замечаю чтобы ширина его изменилась smilesmile

Конкурс продолжается

и почему то

улетел куда-то (я его еле нашел) вниз...sad

Девятилап, слушай, шикарно! не думал, что это ваабще возможно smile

2 проблемки: владигер которую озвучил, и 2-я в ИЕ белая полосочка разделяющая слои.

И деньги твои smile

Думаю достаточно? или просто лень по страничкам потыкать, а мне нужно подготовить резюме? ;)

Link to comment
Share on other sites

  • 0

shamahn посмотрите картинку поближе, там все равно отступ. И к тому же кому вздумается кроме вас уменьшать страничку до таких размеров тем более что в ИЕ сидит не весь мир а чать? в вашем случае мой пример полностью должен подходить.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<style type="text/css">
body
{
margin:0;
padding:0;
height:100%;
}
#left, #right
{
height:100%;
margin:0;
padding:0;
overflow:hidden;
}
#left
{
float:left;
color:orange;
}
#main
{
margin:0;
padding:0;
position:absolute;
width:100%;
}
#img
{
position:absolute;
height:20px;
}
</style>
</head>
<body>
<div id="main">
<div id="left">О компании</div>
<div id="right"><img id="img" src="http://gkng.ru/h1.gif" width="100%" border="0"/></div>
</div>
</body>
</html>

Link to comment
Share on other sites

  • 0

Vindex10, Оригинальное решение ;) но это кастыли. в ФФ - неисчезающая полоса прокрутки. В опера - вроде ничего. В ИЕ, вообще непонятный эффект. Если залить фон правого блока, то можно увидеть, что вертикальный его размер изменяется вместе с горизонтальным.

Просто давайте скажем, что нереализовать этого блоками. И я со спокойной душой оставлю все табличкой :)

Link to comment
Share on other sites

  • 0

Блин, чем вам не нравится, вот подрихтований код, уже писали, что бы убрать полосу прокрутки overflow:hidden. Как вы увидели что там изменяется не знаю, залил фон синим, и ничего. Мне кажется что все решимо.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<style type="text/css">
body
{
margin:0;
padding:0;
height:100%;
}
#left, #right
{
height:100%;
margin:0;
padding:0;
overflow:hidden;
}
#left
{
float:left;
color:orange;
overflow:hidden;
}
#main
{
margin:0;
padding:0;
position:absolute;
width:100%;
overflow:hidden;
}
#img
{
position:absolute;
height:20px;
}

#right
{
background-color:blue;
}
</style>
</head>
<body>
<div id="main">
<div id="left">О компании</div>
<div id="right"><img id="img" src="http://gkng.ru/h1.gif" width="100%"

border="0"/></div>
</div>
</body>
</html>

Link to comment
Share on other sites

  • 0

Изза картинки-заборчика второй слой съезджает гораздо раньше. Хотя тоже выход, если сделать заборчик одним элементом-досточкой. ;)

Мы все таки победили табличную верстку!!!!!!!!!!! claps.gif

Link to comment
Share on other sites

  • 0

Vindex10, он все равно в конечном перепрыгнет на следующую строку. А если у тебя ширина левого блока будет приблизительно равна ширине окна - это произойдет сразу! В ИЕ так и остался отступ между левым и правым блоком :)

Vindex10, мой заказчик сидит на ИЕ ;) и эт гораздо больше части мира сидящей на ней :). Я ему стану объяснять, что ИЕ, отстой! Давайте будем проверять бровзер клиента перед передачей страницы, и если это ИЕ - предупредим: не пугайтесь, у Вас ИЕ и изображение которое вы сейчас будите наблюдать немножко искажено, а так оно очень красивое :(

Если кто-нить считает, что он справился с заданием, - при поддержке большинства участников он получит заработанные "честно" 5 баксов, но если быть откровенным - меня не убедило...

Link to comment
Share on other sites

  • 0

На вашем примере левый блок не настолько широк. Тем более вам никто не запрещает пользоваться таблицами, блочная верстка означает что Контент на странице рассортирован с помощью блоков, но никто не говорил что таблицами пользоваться нельзя. Советую вам почитать вот это.

Link to comment
Share on other sites

  • 0

1) Vindex10, прочитай предыдущий пост, я кое-что подправил.

2) заголовок может быть очень длинным

3) я знаю что можно пользоваться таблицами. Меня интересовало лишь можно ли от них совсем отказаться ;)

сейчас почитаю

Link to comment
Share on other sites

  • 0
Я ему стану объяснять, что ИЕ, отстой! Давайте будем проверять бровзер клиента перед передачей страницы, и если это ИЕ - предупредим: не пугайтесь, у Вас ИЕ и изображение которое вы сейчас будите наблюдать немножко искажено, а так оно очень красивое

Улыбнуло))

А что не так в осле? При маленьком разрешении конечно перепрыгнет, но для мобилок html это жестоко, для мобилок сайты на WML. Это единственное устройство где может быть настолько маленький экран, и все же я не понимаю, чем вам не нравятся примеры.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share


×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy