forked from 4ae9b8/browserhacks
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
182 lines (181 loc) · 115 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
<!doctype html><!--[if lt IE 9]> <html class="ie"> <![endif]--><!--[if gt IE 8]><!--><html lang="en"><!--<![endif]--><head><title>Browserhacks</title><meta charset="utf-8"><meta name="author" content="Hugo Giraudel, Tim Pietrusky, Fabrice Weinberg"><meta name="robots" content="index,follow"><meta name="revisit-after" content="1 days"><meta name="description" content="An extensive list of browser specific CSS and JavaScript hacks from all over the interwebs."><meta property="og:title" content="Browserhacks"><meta property="og:description" content="An extensive list of browser specific CSS and JavaScript hacks from all over the interwebs."><meta property="og:url" content="http://browserhacks.com"><meta name="viewport" content="width=device-width"><link rel="stylesheet" href="css/browserhacks.css"><link rel="shortcut icon" href="img/browserhacks.ico" type="image/x-icon"><!--[if IE]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]--><!--[if IE 7]>
<script src="js/browserhacks-icons-IE7.js"></script>
<![endif]--></head><body id="browserhacks"><!-- Header --><article class="header centered btn-group"><section class="header__logo"><h1><a href="http://browserhacks.com" class="header__link">Browser<span>hacks</span></a></h1></section><section class="header__links"><a href="https://github.com/4ae9b8/browserhacks" target="_blank"><span class="browserhacks-github"></span>Contribute on GitHub</a> <a href="http://twitter.com/Browserhacks" target="_blank"><span class="browserhacks-twitter"></span>@browserhacks</a></section></article><!-- Description --><article data-type="description" class="description centered grid"><section class="grid__col--25"><h2 data-type="1">What's this?</h2><p>Browserhacks is an extensive list of <strong>browser specific CSS and JavaScript hacks</strong> from all over the interwebs. <!-- Special thanks to <a href="http://paulirish.com/2009/browser-specific-css-hacks/">Paul Irish' comprehensive post</a> and <a href="https://gist.github.com/983116">Nicolas Gallagher's additions</a>.--> <span class="desktop-only">Press the first letter of a browser to jump to the according section, like <span class="shortcut">F</span> for Firefox.</span></p></section><!--
--><section class="grid__col--25"><h2 data-type="2">How to?</h2><ol><li>Pick the hack you want</li><li>Copy it into your stylesheet</li><li>Add the style you want between the braces</li><li>Enjoy the new styles for the browser you targeted!</li></ol></section><!--
--><section class="grid__col--25"><h2 data-type="3">Reminder!</h2><p>Please keep in mind using a hack is not always the perfect solution. It can be useful to fix some weird browser specific bug, but in most cases you should fix your CSS/JS or use <a href="http://modernizr.com">feature detection</a>.</p></section><!--
--><section class="grid__col--25"><article class="ad"><h2>Powered by:</h2><div><div id="carbonads-container"><div class="carbonad"><div id="azcarbon"></div></div></div></div><div><div class="browserstack-ad"><a href="http://browserstack.com" target="_blank"><p>Tests powered by</p><img src="img/browserstack.png" alt="BrowserStack"></a></div></div></article></section></article><!-- Search --><article class="search centered grid"><section class="options grid__col--50"><input type="checkbox" name="show-legacy" id="show-legacy" title="Show / hide hacks for old browser"><label for="show-legacy" title="Show / hide hacks for old browser">Show legacy hacks</label><input type="checkbox" name="show-test" id="show-test" title="Show / hide tests for your browser"><label for="show-test" title="Show / hide tests for your browser">Enable tests</label></section><!--
--><section class="grid__col--50" data-type="search"><label for="search" class="visually-hidden">Find a hack</label><input class="search__input" type="text" name="search" id="search" placeholder="Browser search (e.g. IE 6)" spellcheck="false"></section></article><!-- Content --><div id="content"><article class="browser-wrapper an" id="an"><h2 class="centered"><a href="#an"><span class="browserhacks-an"></span> Android</a></h2><h3 class="centered" data-type="selector-parent">Selector Hacks</h3><section class="grid centered" data-type="selector-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-f4ade0540d8e891e8190065f75acb186" data-safe="true" data-legacy="" data-version="*"><div class="hack"><p class="browser-wrapper__label">WebKit</p><pre class="language-css"><code>.selector:not(*:root) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-an"></span> <span class="browser-name">Android</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-f4ade0540d8e891e8190065f75acb186">#</a></li></ul></div></div></section><h3 class="centered" data-type="javascript-parent">JavaScript Hacks</h3><section class="grid centered" data-type="javascript-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-dee2c3ab477a0324b6a2283c434108c8" data-safe="true" data-legacy="" data-version="4.0.4"><div class="hack"><pre class="language-javascript"><code>var isChromium = !!window.chrome;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-an"></span> <span class="browser-name">Android</span> <span class="browser-version">4.0.4</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-dee2c3ab477a0324b6a2283c434108c8">#</a></li></ul></div></div></section><h3 class="centered" data-type="media-parent">Media Query Hacks</h3><section class="grid centered" data-type="media-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-a60b03e301a67f76a5a22221c739dc64" data-safe="true" data-legacy="" data-version="2.3+"><div class="hack"><pre class="language-css"><code>@media screen and (min-width:0\0) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≥ 9</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">4</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-an"></span> <span class="browser-name">Android</span> <span class="browser-version">≥ 2.3</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a60b03e301a67f76a5a22221c739dc64">#</a></li></ul></div></div></section></article><article class="browser-wrapper ch" id="ch"><h2 class="centered"><a href="#ch"><span class="browserhacks-ch"></span> Chrome</a></h2><h3 class="centered" data-type="selector-parent">Selector Hacks</h3><section class="grid centered" data-type="selector-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-f4ade0540d8e891e8190065f75acb186" data-safe="true" data-legacy="" data-version="*"><div class="hack"><p class="browser-wrapper__label">WebKit</p><pre class="language-css"><code>.selector:not(*:root) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-an"></span> <span class="browser-name">Android</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-f4ade0540d8e891e8190065f75acb186">#</a></li></ul></div></div></section><h3 class="centered" data-type="supports-parent">Supports Hacks</h3><section class="grid centered" data-type="supports-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-8a0d11a6b2e3d172711eed35cb7237b9" data-safe="true" data-legacy="" data-version="28+"><div class="hack"><pre class="language-css"><code>@supports (-webkit-appearance:none) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">≥ 28</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-8a0d11a6b2e3d172711eed35cb7237b9">#</a></li></ul></div></div></section><h3 class="centered" data-type="propertyValue-parent">Property/Value Hacks</h3><section class="grid centered" data-type="propertyValue-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-a75ad609a8358bee7acc227abc21cc23" data-safe="true" data-legacy="" data-version="28-"><div class="hack"><pre class="language-css"><code>.selector { (;property: value;); }
.selector { [;property: value;]; }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">≤ 28</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≤ 7</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a75ad609a8358bee7acc227abc21cc23">#</a></li></ul></div></div></section><h3 class="centered" data-type="javascript-parent">JavaScript Hacks</h3><section class="grid centered" data-type="javascript-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-dee2c3ab477a0324b6a2283c434108c8" data-safe="true" data-legacy="" data-version="*"><div class="hack"><pre class="language-javascript"><code>var isChromium = !!window.chrome;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-an"></span> <span class="browser-name">Android</span> <span class="browser-version">4.0.4</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-dee2c3ab477a0324b6a2283c434108c8">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-dbcf58b998334c91bca391a786104338" data-safe="true" data-legacy="" data-version="*"><div class="hack"><p class="browser-wrapper__label">Webkit</p><pre class="language-javascript"><code>var isWebkit = 'WebkitAppearance' in document.documentElement.style;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≥ 3</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-dbcf58b998334c91bca391a786104338">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-eccc7dba00901e9aaeffec592ce1f82c" data-safe="true" data-legacy="" data-version="14+"><div class="hack"><pre class="language-javascript"><code>var isChrome = !!window.chrome && !!window.chrome.webstore;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">≥ 14</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-eccc7dba00901e9aaeffec592ce1f82c">#</a></li></ul></div></div></section><h3 class="centered" data-type="media-parent">Media Query Hacks</h3><section class="grid centered" data-type="media-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-a13653e3599eb6e6c11ba7f1a859193e" data-safe="true" data-legacy="" data-version="22|23|24|25|26|27|28"><div class="hack"><pre class="language-css"><code>@media \\0 screen {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">22-28</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≥ 7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a13653e3599eb6e6c11ba7f1a859193e">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-ac2480b5c83038f2d838e2a62e28a307" data-safe="true" data-legacy="" data-version="29+"><div class="hack"><pre class="language-css"><code>@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) { .selector {} }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">≥ 29</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 16</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-ac2480b5c83038f2d838e2a62e28a307">#</a></li></ul></div></div></section></article><article class="browser-wrapper fx" id="fx"><h2 class="centered"><a href="#fx"><span class="browserhacks-fx"></span> Firefox</a></h2><h3 class="centered" data-type="selector-parent">Selector Hacks</h3><section class="grid centered" data-type="selector-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-fd8df6c81198ebb2d240e77fda6d5154" data-safe="true" data-legacy="" data-version="1.5|2"><div class="hack"><pre class="language-css"><code>body:empty .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">1.5/2</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-fd8df6c81198ebb2d240e77fda6d5154">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-756739b33c37fb7db4cce645bbf7ea5f" data-safe="true" data-legacy="" data-version="2+"><div class="hack"><pre class="language-css"><code>body:last-child .selector, x:-moz-any-link {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 2</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-756739b33c37fb7db4cce645bbf7ea5f">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-027f55be40d457f6a614adb09da0037f" data-safe="true" data-legacy="" data-version="3+"><div class="hack"><pre class="language-css"><code>body:last-child .selector, x:-moz-any-link, x:default {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 3</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-027f55be40d457f6a614adb09da0037f">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-ac5c4714c7405861a285fd127f15338e" data-safe="true" data-legacy="" data-version="3.5+"><div class="hack"><pre class="language-css"><code>body:not(:-moz-handler-blocked) .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 3.5</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-ac5c4714c7405861a285fd127f15338e">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-443a4eb168ccf066e7c2909be4911af1" data-safe="true" data-legacy="" data-version="6+"><div class="hack"><pre class="language-css"><code>_::-moz-progress-bar, body:last-child .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 6</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-443a4eb168ccf066e7c2909be4911af1">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-8b9c5852c4b9eb1f2cbaf7d82e0c6576" data-safe="true" data-legacy="" data-version="21+"><div class="hack"><pre class="language-css"><code>_::-moz-range-track, body:last-child .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 21</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-8b9c5852c4b9eb1f2cbaf7d82e0c6576">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-fcd70847fc9af76ec582d13fe50066c8" data-safe="true" data-legacy="" data-version="*"><div class="hack"><pre class="language-css"><code>_:-moz-tree-row(hover), .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-fcd70847fc9af76ec582d13fe50066c8">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-24f051c1d4bebed8a8ffad21a399cd97" data-safe="true" data-legacy="" data-version="*"><div class="hack"><p class="browser-wrapper__label">Everything but Firefox and Internet Explorer ≤8</p><pre class="language-css"><code>_::selection, .selector:not([attr*='']) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 8</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-24f051c1d4bebed8a8ffad21a399cd97">#</a></li></ul></div></div></section><h3 class="centered" data-type="supports-parent">Supports Hacks</h3><section class="grid centered" data-type="supports-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-8e9b5504d9fda44ec75169381b3c3157" data-safe="true" data-legacy="" data-version="16+"><div class="hack"><pre class="language-css"><code>@supports (-moz-appearance:meterbar) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 16</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-8e9b5504d9fda44ec75169381b3c3157">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-4b5cb295c5a512baabcebfa69ff17f86" data-safe="true" data-legacy="" data-version="22+"><div class="hack"><pre class="language-css"><code>@supports (-moz-appearance:meterbar) and (display:flex) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 22</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-4b5cb295c5a512baabcebfa69ff17f86">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-11e3e2451e94e4e6a26da2112bb07508" data-safe="true" data-legacy="" data-version="24+"><div class="hack"><pre class="language-css"><code>@supports (-moz-appearance:meterbar) and (cursor:zoom-in) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 24</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-11e3e2451e94e4e6a26da2112bb07508">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-60d68ac2dde6cf9b6a9c680211976345" data-safe="true" data-legacy="" data-version="25+"><div class="hack"><pre class="language-css"><code>@supports (-moz-appearance:meterbar) and (background-attachment:local) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 25</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-60d68ac2dde6cf9b6a9c680211976345">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-ab54e21b1631fd90a20bd5c1b5c74a76" data-safe="true" data-legacy="" data-version="26+"><div class="hack"><pre class="language-css"><code>@supports (-moz-appearance:meterbar) and (image-orientation:90deg) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 26</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-ab54e21b1631fd90a20bd5c1b5c74a76">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-28132284f15805605566007edc4a7c39" data-safe="true" data-legacy="" data-version="27+"><div class="hack"><pre class="language-css"><code>@supports (-moz-appearance:meterbar) and (all:initial) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 27</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-28132284f15805605566007edc4a7c39">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-3a88b4a228be1a8e90204f8aa9783b65" data-safe="true" data-legacy="" data-version="28+"><div class="hack"><pre class="language-css"><code>@supports (-moz-appearance:meterbar) and (list-style-type:japanese-formal) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 28</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-3a88b4a228be1a8e90204f8aa9783b65">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-cfd4c21603b122acfda8e81f41cdb320" data-safe="true" data-legacy="" data-version="30+"><div class="hack"><pre class="language-css"><code>@supports (-moz-appearance:meterbar) and (background-blend-mode:difference,normal) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 30</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-cfd4c21603b122acfda8e81f41cdb320">#</a></li></ul></div></div></section><h3 class="centered" data-type="javascript-parent">JavaScript Hacks</h3><section class="grid centered" data-type="javascript-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-bc74b0938bafbf5176b9430961353b77" data-safe="true" data-legacy="" data-version="*"><div class="hack"><pre class="language-javascript"><code>var isFF = !!window.sidebar;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-bc74b0938bafbf5176b9430961353b77">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-ce7e6261734828e5c6726be60a80f928" data-safe="true" data-legacy="" data-version="*"><div class="hack"><pre class="language-javascript"><code>var isFF = 'MozAppearance' in document.documentElement.style;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-ce7e6261734828e5c6726be60a80f928">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-b3c30c5aee06b9717eda9a5266f0eb07" data-safe="true" data-legacy="" data-version="*"><div class="hack"><pre class="language-javascript"><code>var isFF = !!navigator.userAgent.match(/firefox/i);
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-b3c30c5aee06b9717eda9a5266f0eb07">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-245829712a4b69641301103cc22e36d1" data-safe="true" data-legacy="" data-version="2|3|4|5|6|7|8|9|10|11|12|13"><div class="hack"><pre class="language-javascript"><code>var isFF = !!window.globalStorage;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">2-13</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-245829712a4b69641301103cc22e36d1">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-5a1cb80ceddd743787b315c9b7d2a9d5" data-safe="true" data-legacy="" data-version="1.5+"><div class="hack"><pre class="language-javascript"><code>var isFF = typeof InstallTrigger !== 'undefined';
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 1.5</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-5a1cb80ceddd743787b315c9b7d2a9d5">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-d99de65d2582f524f7244f4d8409d6fb" data-safe="true" data-legacy="" data-version="2|3"><div class="hack"><pre class="language-javascript"><code>var isFF = /a/[-1]=='a';
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">2-3</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-d99de65d2582f524f7244f4d8409d6fb">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-04f69fb60016138076b823155e984107" data-safe="true" data-legacy="true" data-version="2"><div class="hack"><pre class="language-javascript"><code>var isFF = (function x(){})[-6]=='x';
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">2</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-04f69fb60016138076b823155e984107">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-0c2a6587c43ad573dec07b4a651fd4f7" data-safe="true" data-legacy="true" data-version="3"><div class="hack"><pre class="language-javascript"><code>var isFF = (function x(){})[-5]=='x';
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">3</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-0c2a6587c43ad573dec07b4a651fd4f7">#</a></li></ul></div></div></section><h3 class="centered" data-type="media-parent">Media Query Hacks</h3><section class="grid centered" data-type="media-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-411240e387db3ac5b87da57714e25d22" data-safe="true" data-legacy="true" data-version="3-"><div class="hack"><pre class="language-css"><code>@media \0 all {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≤ 3</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-411240e387db3ac5b87da57714e25d22">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-b660126302b8b5360308ecedb06f468c" data-safe="true" data-legacy="" data-version="3.6+"><div class="hack"><pre class="language-css"><code>@media screen and (-moz-images-in-menus:0) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 3.6</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-b660126302b8b5360308ecedb06f468c">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-48ca6fc2947b7850c571a2f69bdbffbd" data-safe="true" data-legacy="" data-version="4+"><div class="hack"><pre class="language-css"><code>@media screen and (min--moz-device-pixel-ratio:0) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 4</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-48ca6fc2947b7850c571a2f69bdbffbd">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-c0ecc3408b711c76c4ee576a68d595b9" data-safe="true" data-legacy="" data-version="8+"><div class="hack"><pre class="language-css"><code>@media all and (min--moz-device-pixel-ratio:0) and (min-resolution: .001dpcm) {}
@media all and (-moz-images-in-menus:0) and (min-resolution: .001dpcm) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 8</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-c0ecc3408b711c76c4ee576a68d595b9">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-7ed2d732be3ccfda373d8c3edf90fc8d" data-safe="true" data-legacy="" data-version="11+"><div class="hack"><pre class="language-css"><code>@media all and (min--moz-device-pixel-ratio:0) { @media (min-width: 0px) {} }
@media all and (-moz-images-in-menus:0) { @media (min-width: 0px) {} }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 11</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-7ed2d732be3ccfda373d8c3edf90fc8d">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-36e9719b0244c5806423ca3c8ce02bdc" data-safe="true" data-legacy="" data-version="29+"><div class="hack"><pre class="language-css"><code>@media all and (min--moz-device-pixel-ratio:0) and (min-resolution: 3e1dpcm) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 29</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-36e9719b0244c5806423ca3c8ce02bdc">#</a></li></ul></div></div></section><h3 class="centered" data-type="misc-parent">Miscellaneous</h3><section class="grid centered" data-type="misc-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-758bff81c5c32351b02e10480b5ed48e" data-safe="true" data-legacy="" data-version="3+"><div class="hack"><pre class="language-css"><code>@-moz-document url-prefix() {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">≥ 3</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-758bff81c5c32351b02e10480b5ed48e">#</a></li></ul></div></div></section></article><article class="browser-wrapper ie" id="ie"><h2 class="centered"><a href="#ie"><span class="browserhacks-ie"></span> Internet Explorer</a></h2><h3 class="centered" data-type="selector-parent">Selector Hacks</h3><section class="grid centered" data-type="selector-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-201338417efa0374545f2d1617d7d164" data-safe="true" data-legacy="true" data-version="6-"><div class="hack"><p class="browser-wrapper__label">.unused-class can be any unused class</p><pre class="language-css"><code>* html .selector {}
.unused-class.selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 6</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-201338417efa0374545f2d1617d7d164">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-102de2b99b6dad1dc48a7f17846bd6d7" data-safe="true" data-legacy="" data-version="7-"><div class="hack"><pre class="language-css"><code>.selector, {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-102de2b99b6dad1dc48a7f17846bd6d7">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-4240a7dbdfd467fec4ffdda9b877f3b4" data-safe="true" data-legacy="" data-version="7"><div class="hack"><pre class="language-css"><code>*:first-child+html .selector {}
.selector, x:-IE7 {}
*+html .selector {}
body*.selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-4240a7dbdfd467fec4ffdda9b877f3b4">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-a1cb5e7ad258ad5ed8bbaac04b701415" data-safe="true" data-legacy="" data-version="7-"><div class="hack"><pre class="language-css"><code>.selector\ {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a1cb5e7ad258ad5ed8bbaac04b701415">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-da690292d4fddd94dc7bdd50e38b5713" data-safe="true" data-legacy="true" data-version="6"><div class="hack"><p class="browser-wrapper__label">Everything but Internet Explorer 6</p><pre class="language-css"><code>html > body .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">6</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-da690292d4fddd94dc7bdd50e38b5713">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-34e070c6d1cbbb94dfb54fce88134ecb" data-safe="true" data-legacy="" data-version="7-"><div class="hack"><p class="browser-wrapper__label">Everything but Internet Explorer ≤7</p><pre class="language-css"><code>html > /**/ body .selector {}
head ~ /**/ body .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-34e070c6d1cbbb94dfb54fce88134ecb">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-24f051c1d4bebed8a8ffad21a399cd97" data-safe="true" data-legacy="" data-version="8-"><div class="hack"><p class="browser-wrapper__label">Everything but Firefox and Internet Explorer ≤8</p><pre class="language-css"><code>_::selection, .selector:not([attr*='']) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 8</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-fx"></span> <span class="browser-name">firefox</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-24f051c1d4bebed8a8ffad21a399cd97">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-1aaa2cce9e371d212109d5b1b8229ef6" data-safe="true" data-legacy="" data-version="8-"><div class="hack"><p class="browser-wrapper__label">Everything but Internet Explorer ≤8</p><pre class="language-css"><code>:root .selector {}
body:last-child .selector {}
body:nth-of-type(1) .selector {}
body:first-of-type .selector {}
.selector:not([attr*='']) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 8</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-1aaa2cce9e371d212109d5b1b8229ef6">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-e6b158b7e27bcb157326348efb5c0bb2" data-safe="true" data-legacy="" data-version="9-"><div class="hack"><p class="browser-wrapper__label">Everything but Internet Explorer ≤9</p><pre class="language-css"><code>html[lang='\
en'] .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 9</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-e6b158b7e27bcb157326348efb5c0bb2">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-f1070533535a12744a0381a75087a915" data-safe="true" data-legacy="" data-version="10+"><div class="hack"><pre class="language-css"><code>_:-ms-input-placeholder, :root .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≥ 10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-f1070533535a12744a0381a75087a915">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-d19e53a0fdfba5ec0f283ae86175a3af" data-safe="true" data-legacy="" data-version="11+"><div class="hack"><pre class="language-css"><code>_:-ms-fullscreen, :root .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≥ 11</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-d19e53a0fdfba5ec0f283ae86175a3af">#</a></li></ul></div></div></section><h3 class="centered" data-type="propertyValue-parent">Property/Value Hacks</h3><section class="grid centered" data-type="propertyValue-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-f7e598627929b91f75d13f762f67003f" data-safe="true" data-legacy="true" data-version="6"><div class="hack"><pre class="language-css"><code>.selector { _property: value; }
.selector { -property: value; }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">6</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-f7e598627929b91f75d13f762f67003f">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-6d49e92634f26ae6d6e46b3ebc10019a" data-safe="true" data-legacy="" data-version="7-"><div class="hack"><p class="browser-wrapper__label">Any combination of these characters: ! $ & * ( ) = % + @ , . / ` [ ] # ~ ? : < > |</p><pre class="language-css"><code>.selector { !property: value; }
.selector { $property: value; }
.selector { &property: value; }
.selector { *property: value; }
.selector { )property: value; }
.selector { =property: value; }
.selector { %property: value; }
.selector { +property: value; }
.selector { @property: value; }
.selector { ,property: value; }
.selector { .property: value; }
.selector { /property: value; }
.selector { `property: value; }
.selector { ]property: value; }
.selector { #property: value; }
.selector { ~property: value; }
.selector { ?property: value; }
.selector { :property: value; }
.selector { |property: value; }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-6d49e92634f26ae6d6e46b3ebc10019a">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-90ce8e1eeeb5f3d0971df30d412934b4" data-safe="true" data-legacy="" data-version="7-"><div class="hack"><p class="browser-wrapper__label">Acts as an !important; string after ! can be anything</p><pre class="language-css"><code>.selector { property: value !ie; }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-90ce8e1eeeb5f3d0971df30d412934b4">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-ab1bcc7b3a6544c99260f7608f8e845e" data-safe="true" data-legacy="" data-version="6|7|8"><div class="hack"><pre class="language-css"><code>.selector { property: value\9; }
.selector { property/*\**/: value\9; }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">6-8</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-ab1bcc7b3a6544c99260f7608f8e845e">#</a></li></ul></div></div></section><h3 class="centered" data-type="javascript-parent">JavaScript Hacks</h3><section class="grid centered" data-type="javascript-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-03472e2d8dc3db02e71eee8bf9146dc5" data-safe="true" data-legacy="true" data-version="6-"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && !window.XMLHttpRequest;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 6</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-03472e2d8dc3db02e71eee8bf9146dc5">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-a3e8f965193032bb6100e21a892ae4db" data-safe="true" data-legacy="" data-version="6|7|8|9|10"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && document.compatMode;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">6-10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a3e8f965193032bb6100e21a892ae4db">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-798601405c3485673f2376eaa0ae9844" data-safe="true" data-legacy="" data-version="6|7|8|9|10"><div class="hack"><pre class="language-javascript"><code>var isIE = !!window.ActiveXObject;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">6-10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-798601405c3485673f2376eaa0ae9844">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-97d30c60bf089f00e24cad546a668ee7" data-safe="true" data-legacy="" data-version="7-"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && !document.querySelector;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-97d30c60bf089f00e24cad546a668ee7">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-c20bb618bd84abb4ca0c6c73800e12ec" data-safe="true" data-legacy="" data-version="7"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && window.XMLHttpRequest && !document.querySelector;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-c20bb618bd84abb4ca0c6c73800e12ec">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-852ae8003cf03813d4d75ebe4c3cd898" data-safe="true" data-legacy="" data-version="7|8|9|10"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && window.XMLHttpRequest;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">7-10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-852ae8003cf03813d4d75ebe4c3cd898">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-99981129ff3b2b3a6cb52391716f5d8b" data-safe="true" data-legacy="" data-version="8|9|10"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && document.querySelector;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">8-10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-99981129ff3b2b3a6cb52391716f5d8b">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-e2cb1ecfc2d67744c30566414042c53c" data-safe="true" data-legacy="" data-version="8-"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && !document.addEventListener;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 8</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-e2cb1ecfc2d67744c30566414042c53c">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-c35e14c072b093320f9fb583d4724fc8" data-safe="true" data-legacy="" data-version="8"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && document.querySelector && !document.addEventListener;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">8</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-c35e14c072b093320f9fb583d4724fc8">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-e71d8692f65334173fee715c222cb805" data-safe="true" data-legacy="" data-version="9-"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && !window.atob;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 9</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-e71d8692f65334173fee715c222cb805">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-3ccf60c3e853ba37d5a42ab9654c5400" data-safe="true" data-legacy="" data-version="9"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && document.addEventListener && !window.atob;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">9</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-3ccf60c3e853ba37d5a42ab9654c5400">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-e19dff0ea4b8edbf29f9b1b64d5bb1aa" data-safe="true" data-legacy="" data-version="9|10"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && document.addEventListener;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">9-10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-e19dff0ea4b8edbf29f9b1b64d5bb1aa">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-2adf6a094f55d62e5d392e1639874a53" data-safe="true" data-legacy="" data-version="10"><div class="hack"><pre class="language-javascript"><code>var isIE = document.all && window.atob;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-2adf6a094f55d62e5d392e1639874a53">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-51eca7694aed2dcc3266bc9c8de72872" data-safe="true" data-legacy="" data-version="10-"><div class="hack"><pre class="language-javascript"><code>var isIE = /*@cc_on!@*/false;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-51eca7694aed2dcc3266bc9c8de72872">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-5320ac4c34021dd71500e5df46cdc728" data-safe="true" data-legacy="" data-version="3|4|5|6|7|8|9|10"><div class="hack"><p class="browser-wrapper__label">Check for Internet Explorer version</p><pre class="language-javascript"><code>var ieVersion = /*@cc_on (function() {switch(@_jscript_version) {case 1.0: return 3; case 3.0: return 4; case 5.0: return 5; case 5.1: return 5; case 5.5: return 5.5; case 5.6: return 6; case 5.7: return 7; case 5.8: return 8; case 9: return 9; case 10: return 10;}})() || @*/ 0;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">3-10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-5320ac4c34021dd71500e5df46cdc728">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-d5ce2e767150e222dee23513236d18c1" data-safe="" data-legacy="" data-version="10-"><div class="hack"><p class="browser-wrapper__label">Check for Internet Explorer version</p><pre class="language-javascript"><code>var ieVersion = (function() { if (new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})").exec(navigator.userAgent) != null) { return parseFloat( RegExp.$1 ); } else { return false; } })();
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-invalid" title="Invalid JS: Bad or unnecessary escaping. (col 64),Use '{a}' to compare with '{b}'. (col 103)"></span> <span class="browserhacks-html5" title="Invalid JS: Bad or unnecessary escaping. (col 64),Use '{a}' to compare with '{b}'. (col 103)"></span></li><li class="hack-list__item hack-id"><a href="#hack-d5ce2e767150e222dee23513236d18c1">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-9433f56f91129911581d66a555ce5a8c" data-safe="true" data-legacy="" data-version="7"><div class="hack"><pre class="language-javascript"><code>var isIE = navigator.appVersion.indexOf("MSIE 7.") !== -1;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-9433f56f91129911581d66a555ce5a8c">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-a43251169f364d54a7a8d9fe0686267d" data-safe="true" data-legacy="" data-version="8-"><div class="hack"><pre class="language-javascript"><code>var isIE = '\v'=='v';
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 8</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a43251169f364d54a7a8d9fe0686267d">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-f4dc26dee810cf17378f81e5a1c3bb38" data-safe="" data-legacy="" data-version="8-"><div class="hack"><pre class="language-javascript"><code>var isIE = !+'\v1';
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 8</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-invalid" title="Invalid JS: Confusing use of '{a}'. (col 12)"></span> <span class="browserhacks-html5" title="Invalid JS: Confusing use of '{a}'. (col 12)"></span></li><li class="hack-list__item hack-id"><a href="#hack-f4dc26dee810cf17378f81e5a1c3bb38">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-00a6520d3a8eb63235c297f57a954fb0" data-safe="" data-legacy="" data-version="10"><div class="hack"><pre class="language-javascript"><code>var isIE = eval("/*@cc_on!@*/false") && document.documentMode === 10;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-invalid" title="Invalid JS: eval can be harmful. (col 12)"></span> <span class="browserhacks-html5" title="Invalid JS: eval can be harmful. (col 12)"></span></li><li class="hack-list__item hack-id"><a href="#hack-00a6520d3a8eb63235c297f57a954fb0">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-a2481568d22565334dcf541979e164ac" data-safe="true" data-legacy="" data-version="10+"><div class="hack"><pre class="language-javascript"><code>var isIE = document.body.style.msTouchAction !== undefined;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≥ 10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a2481568d22565334dcf541979e164ac">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-2f32c95ac8c021c463de0fdf685acb29" data-safe="true" data-legacy="" data-version="10+"><div class="hack"><pre class="language-javascript"><code>var isIE = window.navigator.msPointerEnabled;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≥ 10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-2f32c95ac8c021c463de0fdf685acb29">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-ffee86f252accaf9db9ed8b89a46b4ca" data-safe="true" data-legacy="" data-version="10"><div class="hack"><pre class="language-javascript"><code>var isIE = 'behavior' in document.documentElement.style && '-ms-user-select' in document.documentElement.style;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-ffee86f252accaf9db9ed8b89a46b4ca">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-acea075d0ac6954f275a70023906050c" data-safe="true" data-legacy="" data-version="11"><div class="hack"><pre class="language-javascript"><code>var isIE = '-ms-scroll-limit' in document.documentElement.style && '-ms-ime-align' in document.documentElement.style;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">11</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-acea075d0ac6954f275a70023906050c">#</a></li></ul></div></div></section><h3 class="centered" data-type="media-parent">Media Query Hacks</h3><section class="grid centered" data-type="media-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-6615a4a5434dc55fc1c01736edb32cb7" data-safe="true" data-legacy="" data-version="7-"><div class="hack"><pre class="language-css"><code>@media screen\9 {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-6615a4a5434dc55fc1c01736edb32cb7">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-7e41bb4d3e33ad5da4d7d737b7bf3981" data-safe="true" data-legacy="" data-version="8-"><div class="hack"><pre class="language-css"><code>@media \0screen\,screen\9 {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 8</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-7e41bb4d3e33ad5da4d7d737b7bf3981">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-c9242a5ec3f073257e275102be15d95f" data-safe="true" data-legacy="" data-version="8"><div class="hack"><pre class="language-css"><code>@media \0screen {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">8</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-c9242a5ec3f073257e275102be15d95f">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-a60b03e301a67f76a5a22221c739dc64" data-safe="true" data-legacy="" data-version="9+"><div class="hack"><pre class="language-css"><code>@media screen and (min-width:0\0) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≥ 9</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">4</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-an"></span> <span class="browser-name">Android</span> <span class="browser-version">≥ 2.3</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a60b03e301a67f76a5a22221c739dc64">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-28f493d247a12ab654f6c3637f6978d5" data-safe="true" data-legacy="" data-version="10+"><div class="hack"><pre class="language-css"><code>@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≥ 10</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-28f493d247a12ab654f6c3637f6978d5">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-448c4b5ec6e62bb3c328cca118f0a80d" data-safe="true" data-legacy="" data-version="*"><div class="hack"><p class="browser-wrapper__label">Everything but Internet Explorer and Safari ≤6</p><pre class="language-css"><code>@media screen { @media (min-width: 0px) {} }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≤ 6</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-448c4b5ec6e62bb3c328cca118f0a80d">#</a></li></ul></div></div></section><h3 class="centered" data-type="html-parent">Conditional comments</h3><section class="grid centered" data-type="html-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-4db2d71deed5e6b1107d767236988b85" data-safe="" data-legacy="" data-version="9-"><div class="hack"><pre class="language-markup"><code><!--[if IE]> Internet Explorer 9- <![endif]-->
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 9</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item hack-id"><a href="#hack-4db2d71deed5e6b1107d767236988b85">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-7ec5d230f58218fa00944e87d3989ffc" data-safe="" data-legacy="" data-version="9-"><div class="hack"><p class="browser-wrapper__label">Everything but Internet Explorer ≤9</p><pre class="language-markup"><code><!--[if !IE]><!--> Everything but Internet Explorer ≤9 <!--<![endif]-->
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≤ 9</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item hack-id"><a href="#hack-7ec5d230f58218fa00944e87d3989ffc">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-b8564d01a0600733fd83da9385e0d29b" data-safe="" data-legacy="" data-version="6|7|8|9"><div class="hack"><pre class="language-markup"><code><!--[if IE 6]> Internet Explorer 6 <![endif]-->
<!--[if IE 7]> Internet Explorer 7 <![endif]-->
<!--[if IE 8]> Internet Explorer 8 <![endif]-->
<!--[if IE 9]> Internet Explorer 9 <![endif]-->
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">6-9</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item hack-id"><a href="#hack-b8564d01a0600733fd83da9385e0d29b">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-408b3c9cd1be070978fbc4e1e61ee171" data-safe="" data-legacy="" data-version="6|7|8|9"><div class="hack"><pre class="language-markup"><code><!--[if lte IE 6]> Internet Explorer 6 or less <![endif]-->
<!--[if lte IE 7]> Internet Explorer 7 or less <![endif]-->
<!--[if lte IE 8]> Internet Explorer 8 or less <![endif]-->
<!--[if lte IE 9]> Internet Explorer 9 or less <![endif]-->
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">6-9</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item hack-id"><a href="#hack-408b3c9cd1be070978fbc4e1e61ee171">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-07585b1963daff94a93724fd2f8fe6d6" data-safe="" data-legacy="" data-version="6|7|8|9"><div class="hack"><pre class="language-markup"><code><!--[if gte IE 6]> Internet Explorer 6 or greater <![endif]-->
<!--[if gte IE 7]> Internet Explorer 7 or greater <![endif]-->
<!--[if gte IE 8]> Internet Explorer 8 or greater <![endif]-->
<!--[if gte IE 9]> Internet Explorer 9 or greater <![endif]-->
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">6-9</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item hack-id"><a href="#hack-07585b1963daff94a93724fd2f8fe6d6">#</a></li></ul></div></div></section></article><article class="browser-wrapper op" id="op"><h2 class="centered"><a href="#op"><span class="browserhacks-op"></span> Opera</a></h2><h3 class="centered" data-type="selector-parent">Selector Hacks</h3><section class="grid centered" data-type="selector-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-f4ade0540d8e891e8190065f75acb186" data-safe="true" data-legacy="" data-version="14+"><div class="hack"><p class="browser-wrapper__label">WebKit</p><pre class="language-css"><code>.selector:not(*:root) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-an"></span> <span class="browser-name">Android</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-f4ade0540d8e891e8190065f75acb186">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-54eb761b77f24e4235c7e54927f1be11" data-safe="true" data-legacy="" data-version="9.27-"><div class="hack"><pre class="language-css"><code>html:first-child .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≤ 9.27</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">2</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-54eb761b77f24e4235c7e54927f1be11">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-a3f166304aafed524566bc6814e1d5c7" data-safe="true" data-legacy="" data-version="9.5+"><div class="hack"><pre class="language-css"><code>_:-o-prefocus, body:last-child .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 9.5</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a3f166304aafed524566bc6814e1d5c7">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-da316470409d77b36c0d01785685f40c" data-safe="true" data-legacy="" data-version="11-"><div class="hack"><pre class="language-css"><code>@media all and (-webkit-min-device-pixel-ratio:10000), not all and (-webkit-min-device-pixel-ratio:0) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≤ 11</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-da316470409d77b36c0d01785685f40c">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-052b7c66f249a55209252eddeea351f9" data-safe="true" data-legacy="" data-version="9.25"><div class="hack"><pre class="language-css"><code>*|html[xmlns*=""] .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">2/3.1</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">9.25</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-052b7c66f249a55209252eddeea351f9">#</a></li></ul></div></div></section><h3 class="centered" data-type="supports-parent">Supports Hacks</h3><section class="grid centered" data-type="supports-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-8a0d11a6b2e3d172711eed35cb7237b9" data-safe="true" data-legacy="" data-version="14+"><div class="hack"><pre class="language-css"><code>@supports (-webkit-appearance:none) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">≥ 28</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-8a0d11a6b2e3d172711eed35cb7237b9">#</a></li></ul></div></div></section><h3 class="centered" data-type="propertyValue-parent">Property/Value Hacks</h3><section class="grid centered" data-type="propertyValue-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-a75ad609a8358bee7acc227abc21cc23" data-safe="true" data-legacy="" data-version="14+"><div class="hack"><pre class="language-css"><code>.selector { (;property: value;); }
.selector { [;property: value;]; }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">≤ 28</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≤ 7</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a75ad609a8358bee7acc227abc21cc23">#</a></li></ul></div></div></section><h3 class="centered" data-type="javascript-parent">JavaScript Hacks</h3><section class="grid centered" data-type="javascript-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-dee2c3ab477a0324b6a2283c434108c8" data-safe="true" data-legacy="" data-version="14+"><div class="hack"><pre class="language-javascript"><code>var isChromium = !!window.chrome;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-an"></span> <span class="browser-name">Android</span> <span class="browser-version">4.0.4</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-dee2c3ab477a0324b6a2283c434108c8">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-dbcf58b998334c91bca391a786104338" data-safe="true" data-legacy="" data-version="14+"><div class="hack"><p class="browser-wrapper__label">Webkit</p><pre class="language-javascript"><code>var isWebkit = 'WebkitAppearance' in document.documentElement.style;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≥ 3</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-dbcf58b998334c91bca391a786104338">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-3aedd37d5df858c460d27a0321a03370" data-safe="true" data-legacy="" data-version="9.64-"><div class="hack"><pre class="language-javascript"><code>var isOpera = /^function \(/.test([].sort);
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≤ 9.64</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-3aedd37d5df858c460d27a0321a03370">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-fe2a5c116acfe1bbf9488604d9848fed" data-safe="true" data-legacy="" data-version="12.16-"><div class="hack"><pre class="language-javascript"><code>var isOpera = !!window.opera;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≤ 12.16</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-fe2a5c116acfe1bbf9488604d9848fed">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-ec2607bc3d422d7f05e82c2ea49b0a61" data-safe="true" data-legacy="" data-version="12-"><div class="hack"><p class="browser-wrapper__label">Replace X by the version</p><pre class="language-javascript"><code>var isOpera = window.opera && window.opera.version() == X;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≤ 12</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-ec2607bc3d422d7f05e82c2ea49b0a61">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-e80d8da2e40aff4000d8b376a3f514eb" data-safe="true" data-legacy="" data-version="*"><div class="hack"><pre class="language-javascript"><code>var isOpera = !!window.opera || /opera|opr/i.test(navigator.userAgent);
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-e80d8da2e40aff4000d8b376a3f514eb">#</a></li></ul></div></div></section><h3 class="centered" data-type="media-parent">Media Query Hacks</h3><section class="grid centered" data-type="media-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-71627a771f70379e1704bbf6132792cb" data-safe="true" data-legacy="" data-version="12+"><div class="hack"><pre class="language-css"><code>@media (min-resolution: .001dpcm) { _:-o-prefocus, .selector {} }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 12</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-71627a771f70379e1704bbf6132792cb">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-ac2480b5c83038f2d838e2a62e28a307" data-safe="true" data-legacy="" data-version="16+"><div class="hack"><pre class="language-css"><code>@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) { .selector {} }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">≥ 29</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 16</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-ac2480b5c83038f2d838e2a62e28a307">#</a></li></ul></div></div></section></article><article class="browser-wrapper om" id="om"><h2 class="centered"><a href="#om"><span class="browserhacks-om"></span> Opera Mini</a></h2><h3 class="centered" data-type="javascript-parent">JavaScript Hacks</h3><section class="grid centered" data-type="javascript-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-172f62993dedb4837377cf1c6ac9dea9" data-safe="true" data-legacy="" data-version="*"><div class="hack"><pre class="language-javascript"><code>var isOperaMini = Object.prototype.toString.call(window.operamini) === '[object OperaMini]';
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-om"></span> <span class="browser-name">Opera Mini</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-172f62993dedb4837377cf1c6ac9dea9">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-70b623e6ee3d3af7c3ca68b71c5fb29f" data-safe="true" data-legacy="" data-version="*"><div class="hack"><pre class="language-javascript"><code>var isOperaMini = (navigator.userAgent.indexOf('Opera Mini') > -1);
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-om"></span> <span class="browser-name">Opera Mini</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-70b623e6ee3d3af7c3ca68b71c5fb29f">#</a></li></ul></div></div></section></article><article class="browser-wrapper sa" id="sa"><h2 class="centered"><a href="#sa"><span class="browserhacks-sa"></span> Safari</a></h2><h3 class="centered" data-type="selector-parent">Selector Hacks</h3><section class="grid centered" data-type="selector-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-f4ade0540d8e891e8190065f75acb186" data-safe="true" data-legacy="" data-version="*"><div class="hack"><p class="browser-wrapper__label">WebKit</p><pre class="language-css"><code>.selector:not(*:root) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-an"></span> <span class="browser-name">Android</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-f4ade0540d8e891e8190065f75acb186">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-54eb761b77f24e4235c7e54927f1be11" data-safe="true" data-legacy="true" data-version="2"><div class="hack"><pre class="language-css"><code>html:first-child .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≤ 9.27</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">2</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-54eb761b77f24e4235c7e54927f1be11">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-3a0d9f6c9689d662d829b303c8ce819a" data-safe="true" data-legacy="" data-version="2|3"><div class="hack"><pre class="language-css"><code>html[xmlns*=""] body:last-child .selector {}
html[xmlns*=""]:root .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">2-3</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-3a0d9f6c9689d662d829b303c8ce819a">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-052b7c66f249a55209252eddeea351f9" data-safe="true" data-legacy="" data-version="2|3.1"><div class="hack"><pre class="language-css"><code>*|html[xmlns*=""] .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">2/3.1</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">9.25</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-052b7c66f249a55209252eddeea351f9">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-8bacb43ba70fb5c9ccd3029729a78760" data-safe="true" data-legacy="true" data-version="5.1-6"><div class="hack"><pre class="language-css"><code>_::-moz-svg-foreign-content, :root .selector {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">5.1-6</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-8bacb43ba70fb5c9ccd3029729a78760">#</a></li></ul></div></div></section><h3 class="centered" data-type="propertyValue-parent">Property/Value Hacks</h3><section class="grid centered" data-type="propertyValue-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-a75ad609a8358bee7acc227abc21cc23" data-safe="true" data-legacy="" data-version="7-"><div class="hack"><pre class="language-css"><code>.selector { (;property: value;); }
.selector { [;property: value;]; }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">≤ 28</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≤ 7</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a75ad609a8358bee7acc227abc21cc23">#</a></li></ul></div></div></section><h3 class="centered" data-type="javascript-parent">JavaScript Hacks</h3><section class="grid centered" data-type="javascript-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-dbcf58b998334c91bca391a786104338" data-safe="true" data-legacy="" data-version="3+"><div class="hack"><p class="browser-wrapper__label">Webkit</p><pre class="language-javascript"><code>var isWebkit = 'WebkitAppearance' in document.documentElement.style;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≥ 3</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-op"></span> <span class="browser-name">Opera</span> <span class="browser-version">≥ 14</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-dbcf58b998334c91bca391a786104338">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-3e68270c67701bc3a7c9523ed706025e" data-safe="" data-legacy="" data-version="5-"><div class="hack"><pre class="language-javascript"><code>var isSafari = /a/.__proto__=='//';
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≤ 5</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-invalid" title="Invalid JS: The '{a}' property is deprecated. (col 29)"></span> <span class="browserhacks-html5" title="Invalid JS: The '{a}' property is deprecated. (col 29)"></span></li><li class="hack-list__item hack-id"><a href="#hack-3e68270c67701bc3a7c9523ed706025e">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-8cbfaf04fe51ad543a597fbd2f249fa7" data-safe="true" data-legacy="" data-version="*"><div class="hack"><pre class="language-javascript"><code>var isSafari = /constructor/i.test(window.HTMLElement);
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">*</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-8cbfaf04fe51ad543a597fbd2f249fa7">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-462504c4ab517b400419d1b3d73d943a" data-safe="true" data-legacy="" data-version="6"><div class="hack"><pre class="language-javascript"><code>var isSafari = !!navigator.userAgent.match(/safari/i) && !navigator.userAgent.match(/chrome/i) && typeof document.body.style.webkitFilter !== "undefined" && !window.chrome;
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">6</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid JS"></span> <span class="browserhacks-html5" title="Valid JS"></span></li><li class="hack-list__item hack-id"><a href="#hack-462504c4ab517b400419d1b3d73d943a">#</a></li></ul></div></div></section><h3 class="centered" data-type="media-parent">Media Query Hacks</h3><section class="grid centered" data-type="media-childs"><div class="browser-wrapper__hack grid__col--50" id="hack-a60b03e301a67f76a5a22221c739dc64" data-safe="true" data-legacy="true" data-version="4"><div class="hack"><pre class="language-css"><code>@media screen and (min-width:0\0) {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">≥ 9</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">4</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-an"></span> <span class="browser-name">Android</span> <span class="browser-version">≥ 2.3</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a60b03e301a67f76a5a22221c739dc64">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-448c4b5ec6e62bb3c328cca118f0a80d" data-safe="true" data-legacy="" data-version="6-"><div class="hack"><p class="browser-wrapper__label">Everything but Internet Explorer and Safari ≤6</p><pre class="language-css"><code>@media screen { @media (min-width: 0px) {} }
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ie"></span> <span class="browser-name">Internet Explorer</span> <span class="browser-version">*</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≤ 6</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-448c4b5ec6e62bb3c328cca118f0a80d">#</a></li></ul></div></div><div class="browser-wrapper__hack grid__col--50" id="hack-a13653e3599eb6e6c11ba7f1a859193e" data-safe="true" data-legacy="" data-version="7+"><div class="hack"><pre class="language-css"><code>@media \\0 screen {}
</code></pre><ul class="hack-list"><li class="hack-list__item"><span class="browser-icon browserhacks-ch"></span> <span class="browser-name">Chrome</span> <span class="browser-version">22-28</span></li><li class="hack-list__item"><span class="browser-icon browserhacks-sa"></span> <span class="browser-name">Safari</span> <span class="browser-version">≥ 7</span></li></ul><ul class="hack-list hack-list--options"><li class="hack-list__item"><span class="browserhacks-valid" title="Valid CSS"></span> <span class="browserhacks-css3" title="Valid CSS"></span></li><li class="hack-list__item hack-id"><a href="#hack-a13653e3599eb6e6c11ba7f1a859193e">#</a></li></ul></div></div></section></article></div><!-- Additional information --><article class="additional-info centered grid"><section class="grid__col--50"><h2>Additional information</h2><p>Browserhacks is mostly based on the <a href="http://www.paulirish.com/2009/browser-specific-css-hacks/">big list of CSS browser hacks</a> by Paul Irish. Other posts like <a href="http://blog.keithclark.co.uk/moving-ie-specific-css-into-media-blocks/">Moving IE specific CSS to media blocks</a> by Keith Clark, <a href="http://www.thespanner.co.uk/2009/01/29/detecting-browsers-javascript-hacks/">Detecting browsers with JS hacks</a> by Gareth Eyes and <a href="https://gist.github.com/necolas/983116">IE CSS hacks</a> by Nicolas Gallagher greatly helped.</p><p>Many thanks to <a href="https://github.com/jeffclayton">Jeff Clayton</a> for his help with the tests and the creation of new hacks. If you'd like to contribute too, please hit us on <a href="https://github.com/4ae9b8/browserhacks">GitHub</a>.</p></section><!--
--><section class="grid__col--50"><h2>Further reading</h2><p>You may also want to have a look at these related resources:</p><ul><li><a href="http://csswizardry.com/2013/04/shame-css/">shame.css concept</a> by Harry Roberts</li><li><a href="http://webaim.org/blog/user-agent-string-history/">history behind user-agent strings</a> by Aaron Andersen</li><li><a href="http://mathiasbynens.be/demo/css-hacks">hunting a CSS hack for IE 8 only</a> by Mathias Bynens</li></ul></section></article><!-- Quotes --><article id="quotes"><section class="quotes"><div><blockquote class="quote"></blockquote><ul class="quote-authors"></ul></div></section></article><!-- Template: Quote --><script id="template_quote" type="text/template"><p class="quote-content"><%= quote %></p>
— <a href="<%= from %>" class="quote-author" target="_blank"><%= author %></a></script><!-- Template: Author --><script id="template_author" type="text/template"><div class="quote-authors__avatar">
<div class="avatar-<%= twitter %>"></div>
</div>
<a href="<%= from %>" class="quote-authors__name" target="_blank"><%= author %></a></script><!-- Footer --><footer class="footer"><div class="centered"><section class="copyright"><a href="#browserhacks" title="top" class="btn-top"><span class="browserhacks-arrow-up"></span></a><p>Made by <a href="https://twitter.com/HugoGiraudel" target="_blank">Hugo Giraudel</a>, <a href="https://twitter.com/TimPietrusky" target="_blank">Tim Pietrusky</a> and <a href="http://twitter.com/fweinb" target="_blank">Fabrice Weinberg</a>.<br>Design by <a href="https://twitter.com/_joshnh">Joshua Hibbert</a>. Tests by <a href="https://github.com/jeffclayton">Jeff Clayton</a>.</p></section><section class="footer__links"><a href="https://github.com/4ae9b8/browserhacks" target="_blank"><span class="browserhacks-github"></span> Add hacks / report bugs</a> <a href="http://twitter.com/share?text=An+extensive+list+of+CSS/JS+@Browserhacks+from+all+over+the+interwebs+curated+by+@HugoGiraudel+and+@TimPietrusky&url=http://browserhacks.com" target="_blank"><span class="browserhacks-twitter"></span> Spread the word</a></section></div></footer><!-- Scripts --><script src="js/main.min.js" data-manual="true"></script><script>testWidget.init();</script><script type="text/javascript">var _gaq = _gaq || [];_gaq.push(['_setAccount', 'UA-38522111-1']);_gaq.push(['_setDomainName', 'browserhacks.com']);_gaq.push(['_trackPageview']);(function() {var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);})();</script></body></html>