Native resolution 1206 × 2622 px at 3× · 460 PPI · 6.3″ · 9:19.5. Design at 402 × 874 and export assets at 3×.
| Property | Value |
|---|---|
| CSS viewport (portrait) | 402 × 874 px |
| CSS viewport (landscape) | 874 × 402 px |
| Native resolution | 1206 × 2622 px |
| Device pixel ratio | 3× |
| Pixel density | 460 PPI |
| Screen diagonal | 6.3 in |
| Panel size | 2.62 × 5.7 in |
| Aspect ratio | 9:19.5 |
| Total pixels | 3.16 MP |
| Released | 2025 |
| Operating system | iOS |
| Safe area (top / bottom) | 62 / 34 px |
Among the 130 phones on this site, the iPhone 17 has the 51th largest CSS viewport area. Its 402 px width is 3 px above the 399 px average for this category.
Targeting the iPhone 17 in CSS
Device-specific media queries are brittle — a new model with the same width will not match. Use them for genuine per-device fixes only, and prefer width buckets for layout.
/* Target iPhone 17 specifically */
@media only screen
and (device-width: 402px)
and (device-height: 874px)
and (-webkit-device-pixel-ratio: 3) {
/* … */
}
/* More useful in practice — the width bucket it falls into */
@media (min-width: 402px) { /* … */ }
Safe area on the iPhone 17
Dynamic Island, 6.3″ class. Content placed inside the top 62 px or the bottom 34 px will sit under system UI unless you inset it.
/* iPhone 17 safe area — requires viewport-fit=cover */
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
.app {
padding-top: env(safe-area-inset-top); /* 62px */
padding-bottom: env(safe-area-inset-bottom); /* 34px */
padding-left: env(safe-area-inset-left);
padding-right: env(safe-area-inset-right);
}
Compare with other iPhone models
| Device | CSS viewport | Native | DPR | PPI | Diagonal |
|---|---|---|---|---|---|
| iPhone 17 | 402 × 874 | 1206 × 2622 | 3× | 460 | 6.3″ |
| iPhone 17 Pro | 402 × 874 | 1206 × 2622 | 3× | 460 | 6.3″ |
| iPhone Air | 420 × 912 | 1260 × 2736 | 3× | 460 | 6.5″ |
| iPhone 16e | 390 × 844 | 1170 × 2532 | 3× | 460 | 6.1″ |
| iPhone 17 Pro Max | 440 × 956 | 1320 × 2868 | 3× | 460 | 6.9″ |
| iPhone 16 Pro | 402 × 874 | 1206 × 2622 | 3× | 460 | 6.3″ |
| iPhone 17e | 390 × 844 | 1170 × 2532 | 3× | 460 | 6.1″ |
| iPhone 16 | 393 × 852 | 1179 × 2556 | 3× | 460 | 6.1″ |
| iPhone 16 Plus | 430 × 932 | 1290 × 2796 | 3× | 460 | 6.7″ |
Questions about the iPhone 17 screen
What is the screen size of the iPhone 17?
The iPhone 17 has a 6.3-inch display. In CSS the viewport measures 402 × 874 px in portrait, and the panel itself has 1206 × 2622 physical pixels at 460 PPI.
What resolution should I design for on the iPhone 17?
Design at 402 × 874 and export assets at 3×. That gives you 1206 × 2622 px images, which is exactly what the panel renders. Designing directly at 1206 × 2622 means every measurement is 3 times larger than the CSS values you will write.
What is the device pixel ratio of the iPhone 17?
The iPhone 17 reports a device pixel ratio of 3. One CSS pixel therefore covers 9 device pixels. You can read it in JavaScript with window.devicePixelRatio.
What are the safe area insets on the iPhone 17?
In portrait the safe area inset is 62 px at the top and 34 px at the bottom (Dynamic Island, 6.3″ class). Use env(safe-area-inset-*) rather than hard-coding these — the values change per device and per orientation.
Which other devices have the same viewport as the iPhone 17?
2 other devices share the 402 × 874 CSS viewport: iPhone 17 Pro, iPhone 16 Pro. A layout that works on one works on all of them.
Related
window.innerWidth/innerHeight reported by the stock browser with no browser chrome. See methodology and sources.