![]() |
Модераторы: Illuminaty |
![]() ![]() ![]() |
|
NewDima |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 922 Регистрация: 20.2.2006 Где: <?here?> Репутация: нет Всего: 12 |
Эх, плохо у меня с версткой..
В общем проблема в следующем коде:
дело в следующем: дивы с классом together нифига не together. Проставил им в css display: inline, они все-равно каждая с новой строки. Это была проблема раз. А вторая в том, что дивы с классом menuItem отображаются с белой рамкой в 1 пиксель. Вообще бред. Смотрю в IE7 и NN 9.0.0.6 (по NN не особо важно, он все-равно уже забыт) |
||||
|
|||||
WebDisaster |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 406 Регистрация: 22.6.2007 Репутация: 17 Всего: 19 |
Во-первых, допущена логическая ошибка: дивы с классом together имеют ширину 30% 40% и 30%. При этом у них border: 1px; Они даже теоретически не могут уместиться в одной строке, поскольку имеют в сумме более 100% ширины (поскольку по стандарту ширина рамки прибавляется к ширине блока).
Во-вторых: стандартное решение выглядит примерно так:
Никакой рамки в упор не увидел. Это сообщение отредактировал(а) WebDisaster - 30.8.2009, 20:23 |
||||
|
|||||
brother79 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 18.8.2009 Репутация: 1 Всего: 6 |
Немного неправ. Они не могут уместиться в одну строку в нормальном браузере, в ie на сколько я помню, рамка включается в ширину и соотвественно там всё нормально влезет Добавлено через 5 минут и 10 секунд
Странно как-то, никогда inline для меню не делал, обычно всегда делаю float:left; и ширину. Если надо рамки всякие у п-ов меню - то приходится их ещё в дивы оборачивать, чтобы добиться совместимости с ie, ну а дальше как ширину укажешь, так они и вписываются |
|||
|
||||
NewDima |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 922 Регистрация: 20.2.2006 Где: <?here?> Репутация: нет Всего: 12 |
я ставил inline не у итемов меню, а у контейнеров, в одном из которых дыли и итемы.
А странного в моей верстке ничего не может быть =) я крайне редко верстаю, мало к сожалению времени на изучение особенностей браузеров и т.п. А вообще, чтобы меньше кодить, вставил в таблицу, хоть и не нравится, но зато два действия и мат |
|||
|
||||
brother79 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 18.8.2009 Репутация: 1 Всего: 6 |
Ну ты бы написал
Они бы в одну строку и выстроились. А так див по умолчанию занимает всю ширину и следующий - только с новой строки, вот они и не выстраиваются. а таблица - в данном случае ИМХО изврат можно ширину не задавать, тогда она автоматом подберётся, будут разношорстные |
|||
|
||||
WebDisaster |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 406 Регистрация: 22.6.2007 Репутация: 17 Всего: 19 |
||||
|
||||
brother79 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 18.8.2009 Репутация: 1 Всего: 6 |
Согласен, по стандарту - прибавляется, только эти стандарты для обычных смертных, а в микрософте забили на эти стандарты. Возьми да и проверь, чтобы зря воздух не сотрясать.
|
|||
|
||||
WebDisaster |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 406 Регистрация: 22.6.2007 Репутация: 17 Всего: 19 |
brother79, мне не нужно проверять. Я не только точно знаю, что и как будет выглядеть, но знаю почему всё будет вылядеть именно так. И поэтому у меня и в IE всё будет выглядеть строго в соответствии со стандартом. То есть вот так: ![]() ![]() ![]() Учитывая, сколько Вы потратили времени, чтобы открыть мне глаза на секреты вёрстки, я тоже поделюсь несколькими секретами. Но прежде у меня будет вопрос: кто Вас учил так писать DOCTYPE? Вас нагло обманули, DOCTYPE так не пишется. Идите и требуйте назад свои деньги за учёбу. А потом сможете сами проверить вот такой вариант:
Как видно из данного примера, если самому написать html по стандарту w3c, то IE прибавит borders снаружи блока, как это положено по стандарту. И уже не потребуется свою собственную кривизну сваливать на чужих дядек из мелкософта. Ещё один секрет: поведение IE очень сильно зависит от версии и от режима работы (стандартный/совместимый). А переключателем режимов служит именно DOCTYPE. Поэтому бессмысленно писать "IE не там прибавляет бордеры", "IE не так вычитает марджины", "IE неправильно извлекает квадратный корень". Имеет смысл писать о конкретном глюке только применительно к конкретной версии IE (иногда только о конкретном билде) при конкретном режиме работы. А безглючных браузеров не существует в природе. |
|||
|
||||
brother79 |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 471 Регистрация: 18.8.2009 Репутация: 1 Всего: 6 |
Приколько, оказывается он это умеет. Ну что касаемо книжек - многие довольно авторитетные авторы описывают отдельно особенности ie, вместо того, чтобы указать про doctype, не удивительно, что про эту фишку не каждый знает.
|
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Вёрстка веб-сайтов | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |