Форум hotibo.ru

Сайты - по стандартам, но не стандартные сайты!






#1 11.07.2010 12:43

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Длина вложенного div'а в Mozilla

Нигде не нашел обсуждения это й проблемы, поэтому рискну поднять ее здесь.

В отличие от IE и Оперы,  Mozilla к ширине блока (например, width:100%) добавляет padding. Поэтому внешние границы вписанного блока вылезают за границы предка (не распирают, а вылезают, что кажется адсурдом).

Вопрос в том, как вписывать div при таком вопиющем несоотв. поведений в лидирующих браузерах?

Нет на форуме

 

#2 11.07.2010 13:25

AKS
Опытный
Зарегистрирован: 25.12.2009
Сообщений: 409

Re: Длина вложенного div'а в Mozilla

Koltsoff
Написать кроссбраузерный стиль...

Нет на форуме

 

#3 11.07.2010 13:41

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Re: Длина вложенного div'а в Mozilla

Пардон за патетику последнего предложения. Я имел в виду как КОНКРЕТНО.

Нет на форуме

 

#4 11.07.2010 13:52

AKS
Опытный
Зарегистрирован: 25.12.2009
Сообщений: 409

Re: Длина вложенного div'а в Mozilla

Koltsoff
Разместите здесь кусок html-кода, в котором у Вас появляется проблема...

Нет на форуме

 

#5 11.07.2010 14:00

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Re: Длина вложенного div'а в Mozilla

Ну например так



Напишите ваше сообщение и нажмите отправить

Нет на форуме

 

#6 11.07.2010 14:03

AKS
Опытный
Зарегистрирован: 25.12.2009
Сообщений: 409

Re: Длина вложенного div'а в Mozilla

Не указывайте для вложенного div ширину.

Нет на форуме

 

#7 11.07.2010 14:08

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Re: Длина вложенного div'а в Mozilla

А если в div есть бэкграунд, или вписывется таблица на всю ширину (с полями padding)?  Хотите сказать что использование padding для определенной ширины невозможно?

Нет на форуме

 

#8 11.07.2010 14:10

AKS
Опытный
Зарегистрирован: 25.12.2009
Сообщений: 409

Re: Длина вложенного div'а в Mozilla

Koltsoff написал:

Хотите сказать что использование padding для определенной ширины невозможно?

Я не собираюсь ничего утверждать, могу только попробовать помочь разобраться с конкретной проблемой..

Нет на форуме

 

#9 11.07.2010 14:18

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Re: Длина вложенного div'а в Mozilla

Конкретно дело обстоит так:

в ячейке таблицы  (есть бордер) вписаны несколько блоков, отчеркнутые линиями (100% ширины). Содержимое блоков естественно имеет поля.



Раздел 1. Здесь таблица, которая должна быть на всю ширину (за исключением полей)



Раздел 2




Простое решение в IE Opera

td {
margin: 0;
padding: 0;
border:thin;

}

td div  {
width: 100%;
paddind : 20px;
border-top: thin;
}

Как лучше сделать этот код для Mozilla?

Нет на форуме

 

#10 11.07.2010 14:22

AKS
Опытный
Зарегистрирован: 25.12.2009
Сообщений: 409

Re: Длина вложенного div'а в Mozilla

Koltsoff
Напишите, пожалуйста, код таблицы целиком (и используйте тэги оформления, пожалуйста).

Нет на форуме

 

#11 11.07.2010 14:31

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Re: Длина вложенного div'а в Mozilla


O my God!








 
   
   
 
 

Раздел 1.


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




Раздел 2



Раздел 3


   




Отредактированно Koltsoff (11.07.2010 14:32)

Нет на форуме

 

#12 11.07.2010 15:21

AKS
Опытный
Зарегистрирован: 25.12.2009
Сообщений: 409

Re: Длина вложенного div'а в Mozilla

Koltsoff
Извиняюсь за задержку - эл. энергию отключили на час...
А по-теме - в чем проблема-то?

Нет на форуме

 

#13 11.07.2010 15:37

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Re: Длина вложенного div'а в Mozilla

Вопрос в том, чем заменить вышепреведенное решение (IE Opera) для Mozilla, суть проблемы указана выше (использование padding)

Нет на форуме

 

#14 11.07.2010 15:39

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Re: Длина вложенного div'а в Mozilla

интерересует не лобовое, а именно концептуальное решение ситуации.

Нет на форуме

 

#15 11.07.2010 15:39

AKS
Опытный
Зарегистрирован: 25.12.2009
Сообщений: 409

Re: Длина вложенного div'а в Mozilla

Я вставил табличку туда, куда Вы указали - у меня везде одинаково. Поэтому и переспросил...

Нет на форуме

 

#16 11.07.2010 15:49

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Re: Длина вложенного div'а в Mozilla

Хотите сказать что в Mozilla это выглядит нормально?

Нет на форуме

 

#17 11.07.2010 15:59

AKS
Опытный
Зарегистрирован: 25.12.2009
Сообщений: 409

Re: Длина вложенного div'а в Mozilla

Koltsoff
Опять извиняюсь. Только сейчас открыл в FF 1.5 и наконец увидел то, о чем Вы говорили (до этого смотрел в нескольких Gecko до 2005)...
Чтож, теперь попробую разобраться...

Нет на форуме

 

#18 11.07.2010 16:02

AKS
Опытный
Зарегистрирован: 25.12.2009
Сообщений: 409

Re: Длина вложенного div'а в Mozilla

Вообще-то решение тоже самое - не указывать для div.block ширину...

Нет на форуме

 

#19 11.07.2010 16:06

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Re: Длина вложенного div'а в Mozilla

Масштаб бедствия понятен. Спасибо за внимание !

Отредактированно Koltsoff (11.07.2010 16:13)

Нет на форуме

 

#20 12.07.2010 17:51

Михалыч
Новичок
Откуда: Долгопрудный
Зарегистрирован: 19.04.2010
Сообщений: 2
Вебсайт

Re: Длина вложенного div'а в Mozilla

Koltsoff написал:

интерересует не лобовое, а именно концептуальное решение ситуации.

Прошу прощения, что влезаю, но если я правильно понимаю спецификацию, то повдение Mozilla вполне логично:

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

и

Свойство 'width'
Это свойство специфицирует ширину содержимого боксов, генерируемых элементами уровня блока и замещаемыми элементами.

Таким образом общая ширина = 'margin-left' + 'border-left-width' + 'padding-left' + 'width' + 'padding-right' + 'border-right-width' + 'margin-right'.
А учитывая что, если не задано иное, div всегда растягивается на всю ширину содержащего элемента, то указывать для него width="100%", вообще говоря, бессмысленно.


Нет таких преград, которые мы не могли бы перед собою поставить.

Нет на форуме

 

#21 12.07.2010 18:54

Koltsoff
Новичок
Зарегистрирован: 11.07.2010
Сообщений: 11

Re: Длина вложенного div'а в Mozilla

Спасибо 2 AKS и Михалыч

Действительно в общем случае не стоит указывать ширину width (100%), поскольку это совсем не ширина, а именно width (согласно w3c как цитировал Михалыч). (Интересно почитать как это объясняется на языке оригинала.)

Вопрос 100% ширины стоял для вложенной таблицы. После того как я перевел IE в standart mode (xhtml 1.1) все стало прекрасно во всех смотрелках.

вот такой код получился :
--------------------------




O my God!








 
   
   
 
 

Раздел 1.


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






Раздел 2



Раздел 3


   




Нет на форуме

 

#22 13.07.2010 13:37

alemiks
Опытный
Откуда: Voronezh
Зарегистрирован: 09.04.2010
Сообщений: 256
Вебсайт

Re: Длина вложенного div'а в Mozilla

Koltsoff написал:

После того как я перевел IE в standart mode

если не хотите проблем с боксовой моделью браузеров, всегда объявляйте правильный доктайп
у Вас было
это называется "обман валидатора" smile на самом деле при таком доктайпе устанавливается quirksmode и боксовая модель в разных браузерах может отличаться
я, например, использую такой доктайп только когда нужно растянуть таблицу на 100% высоты

Нет на форуме

 

Board footer