3
3
Angular supports most recent browsers. This includes the following specific versions:
4
4
5
5
<table >
6
-
7
6
<tr >
8
-
9
- <th >
10
- Browser
11
- </th >
12
-
13
- <th >
14
- Supported versions
15
- </th >
16
-
7
+ <th>Browser</th>
8
+ <th>Supported versions</th>
17
9
</tr >
18
-
19
10
<tr >
20
-
21
- <td>
22
- Chrome
23
- </td>
24
-
25
- <td>
26
- latest
27
- </td>
11
+ <td>Chrome</td>
12
+ <td>latest</td>
28
13
</tr >
29
-
30
14
<tr >
31
-
32
- <td>
33
- Firefox
34
- </td>
35
-
36
- <td>
37
- latest and extended support release (ESR)
38
- </td>
15
+ <td>Firefox</td>
16
+ <td>latest and extended support release (ESR)</td>
39
17
</tr >
40
-
41
18
<tr >
42
-
43
- <td>
44
- Edge
45
- </td>
46
-
47
- <td>
48
- 2 most recent major versions
49
- </td>
19
+ <td>Edge</td>
20
+ <td>2 most recent major versions</td>
50
21
</tr >
51
22
<tr >
23
+ <td>IE</td>
52
24
<td>
53
- IE
54
- </td>
55
- <td>
56
- <div>11<br>
57
- <em>*deprecated, see the <a href="guide/deprecations#internet-explorer-11">deprecations guide</a></em></div>
25
+ 11<br>
26
+ <em>*deprecated, see the <a href="guide/deprecations#internet-explorer-11">deprecations guide</a></em>
58
27
</td>
59
28
</tr >
60
- <tr >
61
- <td>
62
- Safari
63
- </td>
64
-
65
- <td>
66
- 2 most recent major versions
67
- </td>
29
+ <tr >
30
+ <td>Safari</td>
31
+ <td>2 most recent major versions</td>
68
32
</tr >
69
33
<tr >
70
- <td>
71
- iOS
72
- </td>
73
-
74
- <td>
75
- 2 most recent major versions
76
- </td>
34
+ <td>iOS</td>
35
+ <td>2 most recent major versions</td>
77
36
</tr >
78
37
<tr >
79
- <td>
80
- Android
81
- </td>
82
-
83
- <td>
84
- Q (10.0), Pie (9.0), Oreo (8.0), Nougat (7.0)
85
- </td>
38
+ <td>Android</td>
39
+ <td>Q (10.0), Pie (9.0), Oreo (8.0), Nougat (7.0)</td>
86
40
</tr >
87
-
88
41
</table >
89
42
43
+
90
44
<div class =" alert is-helpful " >
91
45
92
46
Angular's continuous integration process runs unit tests of the framework on all of these browsers for every pull request,
@@ -158,220 +112,133 @@ If the polyfill you want is not already in `polyfills.ts` file, add the `import`
158
112
These are the polyfills required to run an Angular application on each supported browser:
159
113
160
114
<table >
161
-
162
115
<tr style =" vertical-align : top " >
163
-
164
- <th>
165
- Browsers (Desktop & Mobile)
166
- </th>
167
-
168
- <th>
169
- Polyfills Required
170
- </th>
171
-
116
+ <th>Browsers (Desktop & Mobile)</th>
117
+ <th>Polyfills Required</th>
172
118
</tr >
173
-
174
119
<tr style =" vertical-align : top " >
175
-
176
120
<td>
177
121
Chrome, Firefox, Edge, <br>
178
122
Safari, Android, IE 11
179
123
</td>
180
-
181
124
<td>
182
-
183
- [ES2015](guide/browser-support#core-es6)
184
-
125
+ <a href="guide/browser-support#core-es6">ES2015</a>
185
126
</td>
186
-
187
127
</tr >
188
-
189
128
</table >
190
129
191
-
192
130
### Optional browser features to polyfill
193
131
194
132
Some features of Angular may require additional polyfills.
195
133
196
134
<table >
197
-
198
135
<tr style =" vertical-align : top " >
199
-
200
- <th>
201
- Feature
202
- </th>
203
-
204
- <th>
205
- Polyfill
206
- </th>
207
-
208
- <th style="width: 50%">
209
- Browsers (Desktop & Mobile)
210
- </th>
211
-
136
+ <th>Feature</th>
137
+ <th>Polyfill</th>
138
+ <th style="width: 50%">Browsers (Desktop & Mobile)</th>
212
139
</tr >
213
-
214
140
<tr style =" vertical-align : top " >
215
-
216
141
<td>
217
-
218
- [AnimationBuilder](api/animations/AnimationBuilder).
142
+ <a href="api/animations/AnimationBuilder">AnimationBuilder</a>
219
143
(Standard animation support does not require polyfills.)
220
-
221
144
</td>
222
-
223
145
<td>
224
-
225
- [Web Animations](guide/browser-support#web-animations)
226
-
146
+ <a href="guide/browser-support#web-animations">Web Animations</a>
227
147
</td>
228
-
229
148
<td>
230
149
<p>If AnimationBuilder is used, enables scrubbing
231
150
support for IE/Edge and Safari.
232
151
(Chrome and Firefox support this natively).</p>
233
152
</td>
234
-
235
153
</tr >
236
154
237
155
<tr style =" vertical-align : top " >
238
-
239
156
<td>
240
-
241
- [NgClass](api/common/NgClass) on SVG elements
157
+ <a href="api/common/NgClass">NgClass</a> on SVG elements
242
158
</td>
243
-
244
159
<td>
245
-
246
- [classList](guide/browser-support#classlist)
247
-
160
+ <a href="guide/browser-support#classlist">classList</a>
248
161
</td>
249
-
250
162
<td>
251
163
IE 11
252
164
</td>
253
-
254
165
</tr >
255
166
256
167
<tr style =" vertical-align : top " >
257
-
258
168
<td>
259
-
260
- [Router](guide/router) when using
261
- [hash-based routing](guide/router#location-strategy)
169
+ <a href="guide/router">Router</a> when using <a href="guide/router#location-strategy">hash-based routing</a>
262
170
</td>
263
-
264
171
<td>
265
-
266
- [ES7/array](guide/browser-support#core-es7-array)
267
-
172
+ <a href="guide/browser-support#core-es7-array">ES7/array</a>
268
173
</td>
269
-
270
174
<td>
271
175
IE 11
272
176
</td>
273
-
274
177
</tr >
275
-
276
178
</table >
277
179
278
-
279
-
280
180
### Suggested polyfills
281
181
282
182
The following polyfills are used to test the framework itself. They are a good starting point for an application.
283
183
284
184
285
185
<table >
286
-
287
186
<tr >
288
-
289
187
<th>
290
188
Polyfill
291
189
</th>
292
-
293
190
<th>
294
191
License
295
192
</th>
296
-
297
193
<th>
298
194
Size*
299
195
</th>
300
-
301
196
</tr >
302
-
303
197
<tr >
304
-
305
198
<td>
306
-
307
199
<a id='core-es7-array' href="https://github.com/zloirock/core-js/tree/v2/fn/array">ES7/array</a>
308
-
309
200
</td>
310
-
311
201
<td>
312
202
MIT
313
203
</td>
314
-
315
204
<td>
316
205
0.1KB
317
206
</td>
318
-
319
207
</tr >
320
-
321
208
<tr >
322
-
323
209
<td>
324
-
325
210
<a id='core-es6' href="https://github.com/zloirock/core-js">ES2015</a>
326
-
327
211
</td>
328
-
329
212
<td>
330
213
MIT
331
214
</td>
332
-
333
215
<td>
334
216
27.4KB
335
217
</td>
336
-
337
218
</tr >
338
219
339
220
<tr >
340
-
341
221
<td>
342
-
343
222
<a id='classlist' href="https://github.com/eligrey/classList.js">classList</a>
344
-
345
223
</td>
346
-
347
224
<td>
348
225
Public domain
349
226
</td>
350
-
351
227
<td>
352
228
1KB
353
229
</td>
354
-
355
230
</tr >
356
-
357
231
<tr >
358
-
359
232
<td>
360
-
361
233
<a id='web-animations' href="https://github.com/web-animations/web-animations-js">Web Animations</a>
362
-
363
234
</td>
364
-
365
235
<td>
366
236
Apache
367
237
</td>
368
-
369
238
<td>
370
239
14.8KB
371
240
</td>
372
-
373
241
</tr >
374
-
375
242
</table >
376
243
377
244
@@ -399,7 +266,6 @@ For example:
399
266
// __ Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame
400
267
// __ Zone_disable_on_property = true; // disable patch onProperty such as onclick
401
268
// __ zone_symbol__ UNPATCHED_EVENTS = [ 'scroll', 'mousemove'] ; // disable patch specified eventNames
402
-
403
269
/*
404
270
* in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js
405
271
* with the following flag, it will bypass ` zone.js ` patch for IE/Edge
@@ -408,6 +274,5 @@ For example:
408
274
< ; /script>
409
275
< ; !-- zone.js required by Angular -->
410
276
< ; script src="node_modules/zone.js/bundles/zone.umd.js">< ; /script>
411
-
412
277
< ; !-- application polyfills -->
413
278
</code-example >
0 commit comments