Процентное значение для background-position
не позиционирует исходную точку фонового изображения относительно области позиционирования фона. Он позиционирует все изображение. Это означает, что размеры самого изображения также учитываются (после изменения его размера с помощью background-size
).
Позиция фона 100% 100%
аналогична right bottom
, располагая изображение таким образом, что правый нижний угол изображения касается нижнего правого угла области фона. Точно так же 50% 50%
аналогичен center center
, помещая среднюю точку изображения в среднюю точку фоновой области.
Представьте, что прямоугольная плитка перемещается внутри прямоугольной рамки; перемещение его полностью вправо (т. е. на 100 %) означает, что его правый край касается правой стороны кадра (поскольку вы не можете провести его сквозь кадр), а перемещение его в нижний означает, что его нижний край касается нижней части кадра.
Вообще говоря, для любого background-position: x y
, где два значения представляют собой проценты, точка x изображения выравнивается с точкой x области фона, а точка y изображения выравнивается с точкой y области фона.
Описание CSS2.1 читать больно поэтому вместо этого я процитирую Фон и границы CSS3, где есть даже графический пример:
Например, при паре значений «0% 0%» верхний левый угол изображения выравнивается с верхним левым углом, как правило, края заполнения блока. Пара значений «100% 100%» помещает правый нижний угол изображения в правый нижний угол области. С парой значений «75% 50%» точка 75% по ширине и 50% вниз по изображению должна быть размещена в точке 75% по ширине и 50% по площади.
![](https://i.stack.imgur.com/R7oig.png)
Но если вы похожи на меня и плохо представляете это в реальном времени, тогда просто подумайте о скользящей головоломке.
Обратите внимание, что ничего из этого не относится к абсолютным значениям; абсолютные значения позиционируют исходную точку изображения. Однако опорную точку можно изменить, если вы привяжете абсолютное значение к правой и/или нижней сторонам, например, right 10px bottom 10px
расположит фоновое изображение на расстоянии 10 пикселей от правого нижнего угла области фона.
Если вы хотите расположить фоновое изображение, размер которого составляет 100% области фона, вы не сможете использовать процент, так как вы не можете переместить плитку, которая идеально подходит к ее рамке (что, кстати, сделало бы либо для самая скучная головоломка или идеальный розыгрыш). Это применимо независимо от того, соответствуют ли внутренние размеры фонового изображения размерам элемента или вы явно установили background-size: 100%
. Таким образом, чтобы расположить изображение, вам нужно будет использовать вместо этого абсолютное значение (полностью отказываясь от аналогии со скользящей головоломкой).
person
BoltClock
schedule
03.09.2014
background-position
может быть любым значением, это не имеет значения, но он должен присутствовать jsfiddle.net/#&togetherjs=74v86sn02J - person steve_gallagher   schedule 03.09.2014background-position
устанавливает начальную позицию для каждого изображения, которая применяется к левому краю каждого изображения, в вашем случае красный, синий и белый раздел длиной 33% - person steve_gallagher   schedule 03.09.2014