У меня проблемы с отображением некоторых изображений, когда их контейнер становится видимым.Я воспроизвел проблему ниже.Вы можете воспроизвести проблему, установив флажок, когда фрагмент открывается в полном окне.
.wrapper { max-height: 0; overflow: hidden; position: absolute; transition: .2s all ease-out; z-index: 100; } #checkControl:checked~ .wrapper { max-height: 540px; } .anchor { display: block; } .anchor img { filter: grayscale(100%); width: 60px; }
<input type="checkbox" id="checkControl"> <div class="wrapper"> <div class="problemDiv"> <a class="anchor"> <img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/feed.svg" >One </a> <a class="anchor"> <img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/feed.svg" >Two </a> <a class="anchor"> <img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/feed.svg">Three </a> <a class="anchor"> <img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/feed.svg">Four </a> <a class="anchor"> <img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/feed.svg">Five </a> <a class="anchor"> <img src="https://www.gstatic.com/images/icons/material/product/2x/pagespeed_64dp.png">Six </a> </div> </div>
Предполагаемое поведение: Все изображения для показа. Фактическое поведение: Показывает только первые несколько.
То, что я заметил: Быстрое двойное нажатие на выключатель, затем обычно загружает больше изображенийИзменение стилей в инструментах разработчика приведет к загрузке изображений (даже не связанных стилей)Щелчок и перемещение мыши по странице в конечном итоге заставляет их отображатьУдаление элемента .problemDiv устраняет проблемуУдаление фильтра: стиль оттенков серого (100%) устраняет проблемуДругие брокеры работают нормально
Может кто-нибудь объяснить, что здесь происходит, чтобы предотвратить загрузку изображений?У меня все еще проблемы с исправлением существующей ошибки на моем сайте, так как я не могу удалить этот стиль или элемент упаковки.
JSFiddle
Обновлено JSFiddle
.wrapper { max-height: 0; overflow: hidden; position: absolute; transition: 2s all ease-out; z-index: 100; } #checkControl:checked~.wrapper { max-height: 540px; } .anchor { display: block; -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); filter: grayscale(100%); } .anchor img { width: 60px; }
<input type="checkbox" id="checkControl"> <div class="wrapper"> <div class="problemDiv"> <a class="anchor"> <img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/feed.svg" />One </a> <a class="anchor"> <img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/feed.svg" />Two </a> <a class="anchor"> <img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/feed.svg" />Three </a> <a class="anchor"> <img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/feed.svg" />Four </a> <a class="anchor"> <img src="https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/feed.svg" />Five </a> <a class="anchor"> <img src="https://www.gstatic.com/images/icons/material/product/2x/pagespeed_64dp.png" />Six </a> </div> </div>