亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用CSS功能/特征檢測檢測IE11

使用CSS功能/特征檢測檢測IE11

使用CSS功能/特征檢測檢測IE11IE10 +不再支持瀏覽器檢測標簽來識別瀏覽器。為了檢測IE10,我使用JavaScript和功能測試技術來檢測某些帶ms前綴的樣式,例如msTouchAction和msWrapFlow。我想對IE11做同樣的事情,但我假設所有的IE10樣式也將在IE11中得到支持。任何人都可以幫我識別IE11中唯一可以用來分辨兩者的風格或功能嗎?額外信息我不想使用用戶代理類型檢測,因為它太亂了,可以更改,我想我已經讀過IE11故意試圖隱藏它是Internet Explorer的事實。有關IE10功能測試如何工作的示例,我使用此JsFiddle(不是我的)作為我測試的基礎。此外,我期待很多答案“這是一個壞主意......”。我對此的需求之一是IE10聲稱它支持某些功能,但實現得非常糟糕,我希望能夠區分IE10和IE11 +,以便將來繼續使用基于功能的檢測方法。這個測試與Modernizr測試結合在一起,只會使一些功能“回退”到不那么迷人的行為。我們不是在談論關鍵功能。我也在使用Modernizr,但在這里沒有用。我需要幫助解決我明確提出的問題。
查看完整描述

3 回答

?
慕尼黑8549860

TA貢獻1818條經驗 獲得超11個贊

這是2017年的答案,您可能只關心區分<= IE11和> IE11(“Edge”):


@supports not (old: ie) { /* code for not old IE here */ }

更多示范性示例:


body:before { content: 'old ie'; }

/**/@supports not (old: ie) {

body:before { content: 'not old ie'; }

/**/}

這是有效的,因為IE11實際上甚至不支持@supports,所有其他相關的瀏覽器/版本組合都可以。


查看完整回答
反對 回復 2019-08-26
?
瀟湘沐

TA貢獻1816條經驗 獲得超6個贊

我在IE11中遇到了與重力形式(WordPress)相同的問題。表單的列樣式“display:inline-grid”打破了布局; 應用上面的答案解決了差異!

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .gfmc-column { display: inline-block;} /* IE11 */}


查看完整回答
反對 回復 2019-08-26
?
德瑪西亞99

TA貢獻1770條經驗 獲得超3個贊

您可以正常編寫IE11代碼,然后使用@supports并檢查IE11中不支持的屬性grid-area: auto。

然后,您可以在其中編寫現代瀏覽器樣式。IE不支持該@supports規則并將使用原始樣式,而這些將在支持的現代瀏覽器中被覆蓋@supports

.my-class {// IE the background will be redbackground: red;
   // Modern browsers the background will be blue
    @supports (grid-area: auto) {
      background: blue;
    }}


查看完整回答
反對 回復 2019-08-26
  • 3 回答
  • 0 關注
  • 882 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號