On Android, open the file from the Files app and choose Chrome; on iPhone, the Files app shows a basic preview. Both struggle with pages that use separate CSS, JavaScript or image files. The most reliable way is to upload the file to HTMLtoLink from your phone's browser — you get a link that opens the full page, scripts and all, with one tap.
Android
- Open the Files app (or My Files on Samsung) and find the .html file, usually in Downloads.
- Tap it. If asked, choose Chrome (or another browser).
- If it opens as text or nothing happens, long-press the file → Open with → Chrome.
Limitations: the page loads from a local content:// address, so links to neighbouring files (style.css, img/photo.jpg) frequently fail, and some JavaScript features that require a real web origin — modules, fetch() of local files, service workers — do not run.
iPhone and iPad
- Save the attachment to the Files app (Share → Save to Files).
- Tap the file to get a Quick Look preview — fine for simple text and images.
- For anything interactive, Quick Look is not a browser; scripts and linked files often do not work and there is no reliable "open in Safari" for local files.
The method that works on every phone: make it a link
- On your phone, open htmltolink.dev in Chrome or Safari.
- Tap Upload file, ZIP or folder, then pick the .html or .zip from Files / Downloads.
- Tap Get my link. Open it, or tap Share to send it.
Now the page runs on a real HTTPS origin, so CSS, JavaScript, images, fonts and even camera or geolocation APIs behave the way they do on any website. If you received the HTML from someone else, this is also the friendliest way to pass it on.
Edit HTML and see it render live — phone, tablet or desktop width Open the free tool
Previewing HTML code on your phone
If you have HTML as text — copied from an email or an AI chat — paste it into the online HTML viewer to see it rendered, switch to the Phone width, and publish it from there.
Why does it look tiny on my phone?
The page is missing the viewport meta tag. Add this inside <head>:
<meta name="viewport" content="width=device-width, initial-scale=1">
Then check it in the responsive viewer.