Относится ли процентное значение к ширине содержащего блока? - PullRequest
1 голос
/ 20 декабря 2009

Мы можем установить свойства padding и margin элемента E, используя либо пиксели, либо проценты.

А) Я предполагаю, что когда мы используем проценты, процентное значение относится к ширине содержащего блока? Таким образом, если E объявлен непосредственно внутри элемента <body>, то содержащий блок равен <body>, а процентное значение относится к ширине элемента <body>.

B) Какова ширина по умолчанию для элемента <body>?

Спасибо.

EDIT:

Если я установлю отступ E на 50%:

   #E
   {
      padding: 50%;
   }

тогда ширина E "padding-left + padding-right" будет равна ширине области просмотра (когда область просмотра расширяется по всему экрану).

A) Таким образом, я предполагаю, что ширина (указанная в пикселях) <body> зависит от горизонтального разрешения монитора и ширины области просмотра? Разрешение моего экрана установлено на 1024 * 768, и, таким образом, в моем случае ширина <body> составляет 1024 пикселей (при условии, что область просмотра расширяется по всему экрану)? Но если бы я изменил разрешение на 800 * 600, то ширина <body> была бы 800px?

Ответы [ 4 ]

2 голосов
/ 20 декабря 2009
  1. Да, CSS будет применен к элементу, который его содержит.

  2. Ширина по умолчанию в процентах для тега <body> составляет 100%.

Как правило, вы должны использовать файл CSS, связанный с вашим HTML, и использовать Селекторы CSS , чтобы выбрать элементы для стиля. Встраивать CSS в ваш HTML - плохая практика, так как это не очень удобно (например, если вам нужно изменить стиль на сайте).

Edit:

#E { padding: 50%; }

является ярлыком для:

#E { padding-top: 50%; padding-right: 50%; padding-left: 50%; padding-bottom: 50%;}

Что касается обозначения%, это ширина области просмотра, то есть количество пикселей во внутреннем окне браузера, показывающих HTML, никак не связанных с разрешением экрана.

Если вы измените разрешение окна на 800px * 600px, ширина вашего окна просмотра будет несколько меньше 800px, поскольку полоса прокрутки занимает часть этого.

1 голос
/ 21 декабря 2009

А) Я предполагаю, что когда мы используем проценты, процентное значение относится к ширине содержащего блока?

Это зависит от свойства, которому присвоен процент. Например, для font-size это вычисленный размер шрифта родительского элемента.

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

B) Какова ширина элемента по умолчанию?

По умолчанию ширина элемента body равна auto, что означает "Что бы ни оставалось места после того, как были учтены поля, отступы и границы". Поскольку в браузерах по умолчанию используется ненулевое заполнение и / или поле (какое из двух значений зависит от браузера), это не 100%.

1 голос
/ 20 декабря 2009

«Разрешение моего экрана установлено на 1024 * 768, и, таким образом, в моем случае ширина <body> составляет 1024 пикселей?»

Как упоминалось в Tor, элемент <html> может иметь собственные поля, границы и отступы.

Кроме того, полосы прокрутки окна браузера также могут занимать некоторое пространство.

1 голос
/ 20 декабря 2009

Ширина по умолчанию body равна 100%, но html является родительским контейнером body, поэтому в некоторых случаях это повлияет на body, если вы не знаете об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...