Mi chiedo se c'è un modo per rilevare se un browser è in grado di elementi SVG Animating usando i CSS
Risposta semplice: Sì, come indicato da @jhpratt.
È possibile rilevare se un browser supporta la funzionalità CSS con solo CSS. La regola at-rule @supports
consente di specificare dichiarazioni che dipendono dal supporto di un browser per una o più funzionalità CSS specifiche. Questa è chiamata query di funzionalità.
Esempio:
@supports (display: flex) {
div {
display: flex;
}
}
@supports not (display: flex) {
div {
float: right;
}
}
MDN Link: https://developer.mozilla.org/de/docs/Web/CSS/@supports
lungo Risposta:
si avrà sempre alcuni cross-browser
problemi. Il problema riscontrato è disturbare ogni sviluppatore Web. Esistono ancora modi per aggirare questo problema di supporto del browser:
1.È possibile controllare "posso usare" per la compatibilità:
Link: http://caniuse.com/ Si raccomanda di cercare qualsiasi funzionalità che è discutibile come le animazioni.
2. Utilizzare un autoprefixer nel vostro flusso di lavoro:
Con l'aiuto di un autoprefixer che non ci si deve preoccupare la maggior parte del tempo su come utilizzare i CSS con un prefisso come -moz-, -webkit- ecc. Questo piccolo aiutante farà il trucco per te, puoi persino dire ad alcuni autoprefixers quali browser vuoi supportare.
3. 3 ° utente - librerie di partito:
Ci sono molte librerie là fuori che è possibile utilizzare per rilevare il browser e la versione. Se vuoi essere sicuro che la tua animazione sia sicura da usare, puoi semplicemente usare l'animazione fornita dalle librerie e ovviamente guardare la compatibilità prima sui rispettivi siti web.
alcuni grandi nomi:
ci sono molti di più, sono finite Ricerca nel Mondo ampia rete.
4. Usare CSS Hacks per rilevare browser specifici:
E 'possibile utilizzare i cosiddetti CSS Hacks. Sono chiamate CSS specifiche, che si applicano solo su determinati browser.
Alcuni esempi:
Internet Explorer/Edge 8 only: @media \0screen {}
firefox ≥ 3.6 only: @media screen and (-moz-images-in-menus:0) {}
Opera ≤ 9.27 AND Safari 2: html:first-child .selector {}
È possibile cercare più Browserhacks qui: http://browserhacks.com/
Conclusione:
E 'possibile rilevare browser specifici, ma non è possibile rilevare se il brwoser supporta la funzione data con solo CSS. Questo è il motivo per cui avrai sempre dei momenti difficili con il supporto del browser.
Spero che questo aiuti. Saluti
Hai provato a indagare su [Modernizr] (http://modernizr.com/) per questo scopo? – robjez
Non ho trovato alcun test che controlla se le animazioni CSS stanno funzionando con SVG. –
@robjez Ho solo guardato bene e non ho visto alcun modo per rilevare se le animazioni CSS funzionano anche con SVG. Questa è una buona domanda. F Lekschas, l'hai mai capito? – JKillian