Ширина HTML 100%

Это сводит меня с ума. Что происходит с "width:100%"? По-видимому, это просто работает в IExplore, таким образом, я думаю, что это - одна из тех вещей составленная Microsoft.

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

Удачи?

11
задан vtortola 11 May 2010 в 23:38
поделиться

4 ответа

Элемент уровня блока (display: block;) автоматически займет 100% ширины родительского элемента. Вы можете изменить его ширину, используя проценты или пиксели. Ширина встроенных элементов (display: inline;) не может быть изменена.

Если вы хотите, чтобы что-то заняло все пространство родительских элементов, я предлагаю вам попробовать что-то вроде этого:

.class{
    display:block;
    width:100%;
}
13
ответ дан 3 December 2019 в 06:45
поделиться

Если я правильно вас понял, вы спрашиваете, является ли width: 100% только для IE. Ответ - нет; его понимают все основные браузеры. Источник: http://www.w3schools.com/css/pr_dim_width.asp

2
ответ дан 3 December 2019 в 06:45
поделиться

Обратите внимание, что width: 100% не будет работать со встроенными тегами ... Таким образом, такие вещи, как или, где свойство 'display' как значение 'inline' не осуществлено.

Если это для вас новость, я рекомендую взять книгу, так как HTML не является чем-то специальным для изучения.

1
ответ дан 3 December 2019 в 06:45
поделиться

Width:100% - это, конечно, не выдумка MS. Понимание таких вещей, как боксовая модель и элементы inline vs block (например, spans vs divs), поможет вам понять часть того, что вы увидите. Различия между браузерами имеют меньше отношения к "Width:100%", чем к тому, как браузеры интерпретируют модель блока для данного элемента, и в частности такие вещи, как поля, границы и padding.AFAIK, все браузеры будут соблюдать width:100%, но то, как они интерпретируют все остальное, может повлиять на то, сколько места они отдают под "100%".

Помните, что 100% - это 100% РОДИТЕЛЯ, а не ОКНА.

 <body>
   <div id = "one" style="width:50%">
     <div id = "two" style = "width:100%" />
   </div>
 </body>

В этом случае "два" все равно будет занимать только 50% ширины окна, потому что оно находится в родительском окне, ширина которого составляет 50%. (1 * .5 = .5)

Итак, говоря это, конкретный пример непонятного поведения очень помог бы людям дать вам конкретный ответ.

4
ответ дан 3 December 2019 в 06:45
поделиться