Хорошо, я нашел временное решение для этого:
Существование стиля "filter:" - это то, что заставляет исчезать все стили "background-image:", кроме последнего из перечисленных. Дело не в том, что он удаляет то, чего не знает, а в том, что он удаляет все, кроме последнего стиля "background-image" в списке.Должно быть, Microsoft (предполагаемый) способ создания фильтра и особого стиля фонового изображения для MS хорошо сочетается, однако они не очень хорошо его кодировали.Определенно дефект MS VS.Чтобы воспроизвести, просто щелкните правой кнопкой мыши в классе CSS с кодом, подобным следующему:
background-color: #EBEBEB; /* Fallback background color for non supported browsers */
background-image: -webkit-gradient(linear, left top, right top, from(#FFFFFF), to(#DAD6E7));
background-image: -webkit-linear-gradient(left, #FFFFFF, #DAD6E7);
background-image: -moz-linear-gradient(left, #FFFFFF, #DAD6E7);
background-image: -ms-linear-gradient(left, #FFFFFF, #DAD6E7);
background-image: -o-linear-gradient(left, #FFFFFF, #DAD6E7);
background-image: linear-gradient(left, #FFFFFF, #DAD6E7);
filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFFFFF', EndColorStr='#DAD6E7', gradientType='1'); /* IE6 - IE9 */
, а затем выберите «Стиль сборки ...».Затем нажмите «ОК», ничего не меняя, и просмотрите его, удалив все, кроме последнего оставшегося фонового изображения.Попробуйте изменить порядок «стилей фонового изображения и оставьте webkit последним, а затем убедитесь сами.
Вы заметите, что если вы удалите стиль« filter: », проблема исчезнет, однаконам нужно это (для этого примера), поэтому решение, кажется, перемещает стиль «фильтр:» над всеми строками «background-image:». Как только вы это сделаете, он оставляет их в покое, и проблема исчезает.
Изменение вышеуказанного CSS на это, кажется, облегчает проблему:
filter: progid:DXImageTransform.Microsoft.gradient(startColorStr='#FFFFFF', EndColorStr='#DAD6E7', gradientType='1'); /* IE6 - IE9 */
background-color: #EBEBEB; /* Fallback background color for non supported browsers */
background-image: -webkit-gradient(linear, left top, right top, from(#FFFFFF), to(#DAD6E7));
background-image: -webkit-linear-gradient(left, #FFFFFF, #DAD6E7);
background-image: -moz-linear-gradient(left, #FFFFFF, #DAD6E7);
background-image: -ms-linear-gradient(left, #FFFFFF, #DAD6E7);
background-image: -o-linear-gradient(left, #FFFFFF, #DAD6E7);
background-image: linear-gradient(left, #FFFFFF, #DAD6E7);
ОБНОВЛЕНИЕ: Обходное решение выше работает только длякогда VS применяет форматирование, когда вы используете диалоговое окно «Стиль сборки ...» -> «Изменить стиль», потому что я только что увидел его снова с исправлением, приведенным выше, поэтому оно должно быть из чего-то другого.