2013-07-16 2 views
2

Недавно я обнаружил странное отображающее проблему в Chrome при попытке установить повторяющийся градиент на строке таблицы:Повторяя линейный фон отображается неправильно

see the Demo

<table id="one"> 
    <tr><td>123</td><td>asd</td><td>brgfbb</td><td>sdf</td><td>bgfb</td></tr> 
</table> 

#one tr{ 
    background-image: repeating-linear-gradient(135deg, 
        #bada55, #bada55 5px, 
        transparent 5px, transparent 10px); 
} 

Размещение такого градиента на td элемент, конечно, не будет работать. Однако, при размещении градиента на tr градиент странно нарушается, как если бы он был помещен на td с. Разрывы - это именно то место, где касаются ячейки таблицы. При размещении градиента на столе полосы имеют неправильный размер.

Chrome:

Chrome linear gradient bug

В Firefox все выглядит красиво:

Firefox gradient

P.S. IE10 имеет те же проблемы с градиентом на tr, прямо на элементе таблицы все выглядит нормально.

Вы знаете какие-либо обходные пути для этой проблемы?

+0

Я действительно хотел бы знать причину для downvote ...;) – Christoph

+0

Не могли бы вы настроить быстрый скрипт? – SpaceBeers

+0

@SpaceBeers У меня такое чувство, что вы не читали за пределами первого предложения моего вопроса ... угадайте, почему;) Я отредактировал свой ответ, чтобы сделать скрипку еще более заметной. – Christoph

ответ

0

Это можно устранить, просто применив css к используемому вами идентификатору - #one или #two. jsfiddle здесь демонстрации - вы можете увидеть, что я изменил его от

#one tr{ 
    background-image: repeating-linear-gradient(135deg, #bada55, #bada55 5px, transparent 5px, transparent 10px); 
    padding:0;margin:0; 
} 

в

#one { 
    background-image: repeating-linear-gradient(135deg, #bada55, #bada55 5px, transparent 5px, transparent 10px); 
    padding:0;margin:0; 
} 

И не более сказывался фоновое изображение :)

+0

Спасибо, что посмотрели на это. Однако ваше решение именно то, о чем я упоминал в своем вопросе: «Если вместо градиента вместо таблицы [...]] вы видите в моей справочной таблице' # two'. Это также существенно изменяет семантику селектора, что не всегда можно сделать. Кроме того, полоски по-прежнему имеют неправильный размер в этом случае. И последнее, но не менее важное: ваша скрипка точно соответствует мне ... – Christoph

Смежные вопросы