Я хочу использовать правило CSS object-fit
.
Это не поддерживается в MSIE и MS Edge Browser.
Хотя для IE есть несколько полисов, я не знаю, что работает в Edge.
например. polyfill fitie Джонатана Нила работает с IE, но не в Edge (по крайней мере, не на моей машине). Это связано с тем, что fiie использует element.currentStyle
и element.runtimeStyle
, которые являются только MS-объектами JS, которые больше не поддерживаются в Edge-браузерах. Но если я использую window.getComputedStyle(element).getPropertyValue('object-fit')
, Edge ничего не возвращает.
Итак, как мне получить правило правила CSS object-fit
с JavaScript в браузере MS Edge?
img = document.getElementById('i');
s = self.getComputedStyle(img);
console.log('object-fit: ', s.getPropertyValue('object-fit'));
console.log('-ms-object-fit: ', s.getPropertyValue('-ms-object-fit'));
div {
width: 400px;
height: 320px;
overflow: hidden;
}
#i {
display: block;
width: 100%;
height: 100%;
-ms-object-fit: cover;
object-fit: cover;
}
div {
box-sizing: border-box;
border: 1px solid gold;
}
div,
p {
font-family: sans-serif;
font-size: 20px;
width: 400px;
margin: 0 auto;
}
<p>img: Has object-fit CSS rule, but does not appear in MS Edge JavaScript log</p>
<div>
<img src="https://dummyimage.com/640x240/333/444.png" id="i" />
</div>