TL;DR
Заполнение рассчитывается в соответствии с шириной родителя
Во-первых, вы должны отметить, что:
Процент:
Процент рассчитывается относительно ширины блока, содержащего сгенерированный блок [...] (источник: w3c, выделение мое)
Это означает, что отступ вычисляется в соответствии с шириной родительского элемента (стоит отметить, что в макеты без flexbox, отступы сверху и снизу также относятся к ширине содержащего блока).
С коробкой-размером: граница-коробка
Когда вы меняете box-model по умолчанию на границы, отступы (и границы ) включается в ширину элемента, как в вашем примере. Так с
width:600px;
padding-right:50%;
box-sizing:border-box;
Правильный отступ должен составлять 50% от ширины родителя, но общая ширина элемента составляет 600 пикселей. Единственный момент, когда право отступа составляет 50% от ширины элемента, — это когда parent width = element width
(Обратите внимание, что в вашем примере этого не может быть, потому что родителем является body, а body имеет поле по умолчанию).
Временное решение.
Если вы хотите, чтобы отступ составлял 50 % ширины элемента, в этой блочной модели вы можете:
- установить фиксированный отступ:
width:600px; padding-right: 300px;
- придайте элементу плавную ширину:
width:50%; padding-right:25%;
Без размера окна: граница окна
В блочной модели по умолчанию отступы не включены в ширину элемента, поэтому element width = 600px + 50% of parent's width
, как вы можете видеть в следующем примере:
#Test{
width:600px;
padding-right:50%;
background:#ddd;
}
<div id="Test">
TEXT ETISI DHOASIHD I SAIDUHSILAUDH LISH ADBHSJADB JHSA DKH ASKDH KSAH DKLJS ADLK ASJKLD KLASH DLSJAH KLS ADKL S JS KSH KD KSJ HDKJSH DKH SDKH SKDH KSJH DKJSH DKJ HTEXT ETISI DHOASIHD I SAIDUHSILAUDH LISH ADBHSJADB JHSA DKH ASKDH KSAH DKLJS ADLK ASJKLD KLASH DLSJAH KLS ADKL S JS KSH KD KSJ HDKJSH DKH SDKH SKDH KSJH DKJSH DKJ HTEXT ETISI DHOASIHD I SAIDUHSILAUDH LISH ADBHSJADB JHSA DKH ASKDH KSAH DKLJS ADLK ASJKLD KLASH DLSJAH KLS ADKL S JS KSH KD KSJ HDKJSH DKH SDKH SKDH KSJH DKJSH DKJ HTEXT ETISI DHOASIHD I SAIDUHSILAUDH LISH ADBHSJADB JHSA DKH ASKDH KSAH DKLJS ADLK ASJKLD KLASH DLSJAH KLS ADKL S JS KSH KD KSJ HDKJSH DKH SDKH SKDH KSJH DKJSH DKJ H
</div>
Временное решение.
Если вы хотите, чтобы отступ составлял 50 % ширины элемента, в этой блочной модели вы можете:
- установить фиксированный отступ:
width:300px; padding-right: 300px;
- придайте элементу плавную ширину:
width:25%; padding-right:25%;
Ссылки:
person
web-tiki
schedule
12.01.2016
50%
— относительное измерение. вопрос, который вы должны задать, заключается в том, каково это измерение относительно К. - person Marc B   schedule 12.01.2016