2015-11-04 1 views
-2

Смотрите скрипку: http://jsfiddle.net/vs32rb9w/Прозрачная граница белого цвета

Почему там 1px белая граница, если я прямо сказал border-color: transparent?

Я проверил это как в Chrome, так и в FireFox - граница будет белой, а не прозрачной.

И становится прозрачным - угадайте, что - когда я удаляю объект background (или сделайте его transparent).

Такая неприятная ошибка?

ответ

0

Граница прозрачная. Поскольку вы установили ширину границы, модель диктует, что высота div равна 1px. Затем, поскольку цвет bg установлен, он отображается. Если вы удаляете фоновый цвет, то div по-прежнему 1px, но граница прозрачна, поэтому вы не видите ее своими глазами.

+0

Почему высота div равна 1px? Я не просил об этом. Я только сказал ему сделать 1px границу. И это не имеет отношения к тому, что я использую 'border-box' или нет. – asdfasdfads

+0

oh, 'background-clip: padding-box;' похоже, разрешает его. – asdfasdfads

1

После проверки и создания вашего свернутого div больше, я понял, в чем проблема. Граница прозрачная, но ее ширина указана, а высота слишком мала, чтобы отличать ее от фона. Граница прозрачная, вы ее просто не видите!

+0

oh, thx, i одобрил ваш комментарий. Я нашел ответ в «background-clip: padding-box» – asdfasdfads

+0

Это тоже работает! –