Horizon Theme Woes: Fixing Missing Product Images & Broken Layouts on Older Mobile Devices
Hey there, fellow store owners! Let's talk about a tricky issue that recently popped up in the Shopify community forums, one that many of you might be silently struggling with. Imagine this: you've got your beautiful Shopify store running on the slick new Horizon theme, everything looks perfect in your Theme Editor, but then a customer on an older iPhone or Android device tells you they can't see your product images. Or worse, your entire product page layout is completely broken!
That's exactly what AhsanKhan_1 brought to our attention in a recent thread titled "Horizon Theme – Product Images Not Showing some Mobiles (iPhone X)". They shared screenshots (which I've included below) showing exactly what they meant – product images missing, variant selectors out of place, and product cards looking like a mess. The kicker? It was working fine on newer phones, and they even noticed the same problem on other Horizon stores, confirming it wasn't just a unique glitch on their end.
Understanding the Root Cause: Modern CSS vs. Older Browsers
The community quickly jumped in to diagnose the problem, and the consensus was clear: the Horizon theme, being quite modern, leverages some cutting-edge CSS features that older mobile browsers simply don't understand. Specifically, two culprits were identified:
- CSS
subgrid: This feature is used for the product-media grid layout and is only supported in Safari 16 and newer. If an older browser (like Safari 15 on an iPhone X) encounters it, it rejects the value, causing the entire layout to collapse. HotspotStudio confirmed this after testing on BrowserStack, noting that Safari 15 flagsgrid-template-columns: subgridas invalid. animation-timeline: This is for scroll-driven CSS animations, which Horizon uses to fade in slide and product-media content. This feature is missing in Safari altogether and in Chrome versions older than 115 (common on older Android phones and in-app browsers). If the browser doesn't support it, the content might just stay hidden or not animate at all.
As Priyasha and DanielAnderson pointed out, your Theme Editor looks fine because it runs in a modern browser environment. But your live store, when viewed on an older device, is a different story.
This isn't just a cosmetic annoyance; as Icey.Lane highlighted, it's a "P0 availability issue." If a shopper can't see your product images or interact with variant selectors, they can't buy! This directly impacts your sales, which is something no one wants.
To Upgrade or Accommodate? The Community Weighs In
There was a bit of a debate in the thread about how to approach this. Some, like Maximus3 and one user named Ploqo, suggested that older devices like the iPhone X (which is capped at iOS 16, but many users are on iOS 15 or lower) are "obsolete." Their advice was to either recommend customers upgrade their devices or revert to an older, more backward-compatible theme. While it's true that technology moves fast, telling a significant portion of your potential customer base to get a new phone isn't always practical or customer-friendly.
Thankfully, the more technical experts in the thread offered a more accommodating solution: a targeted CSS fix. This approach ensures that your store looks great on modern browsers while providing a graceful fallback for older ones, so no customer gets left behind. After all, a smooth shopping experience is key to successful e-commerce, and that's why many of us choose to start a Shopify store in the first place – for its reliability and reach.
The Fix: Adding Fallback CSS to Your Horizon Theme
The good news is that there's a relatively straightforward CSS workaround that can address both the subgrid and animation-timeline issues. This involves adding a small block of code to your theme that only applies to browsers that don't support these newer features, leaving your modern browser experience untouched.
Here’s how to implement the fix, synthesizing the advice from ThemeMend, HotspotStudio, and Ploqo (the one who provided the animation fix):
Step-by-Step Instructions:
- Access Your Theme Editor: From your Shopify admin, go to Online Store > Themes. Find your Horizon theme and click on Customize.
- Add a Custom Liquid Section: In the theme editor, scroll down to the bottom of your page layout (or any section that's included on every page, like the Footer). Click Add section.
- Select "Custom Liquid": Under the "Footer" group (or "Custom Content"), choose Custom Liquid.
- Paste the CSS Code: In the Custom Liquid section, paste the following code. This combined code block addresses both the
subgridandanimation-timelineissues.
A note on the subgrid fallback: The .product-information__grid selector was identified by HotspotStudio. The specific fallback (display: flex; flex-direction: column;) is a common way to ensure content stacks vertically if a complex grid isn't supported. You might need to adjust this slightly depending on your specific layout, but it's a solid starting point for a graceful degradation.
What to do after applying the fix:
- Test Thoroughly: As Zanye and Icey.Lane suggested, it’s crucial to test this on affected devices (or emulators like BrowserStack) to confirm the images load and the layout is stable. Check the product page, collection pages, and homepage product cards.
- Keep Your Theme Updated: Always ensure your Horizon theme is running the latest version. Shopify regularly releases updates that might include fixes for these types of compatibility issues.
- Report to Shopify Support: Since this appears to be a systemic issue affecting multiple Horizon stores, it’s vital to report it to Shopify Support. The more people who report it, the higher the chance it gets fixed at the source, saving everyone the trouble of manual workarounds.
This kind of issue can be incredibly frustrating, but it's a testament to the power of the Shopify community that solutions can be found and shared so quickly. By implementing these fallback CSS rules, you can ensure that your Shopify store provides a seamless and visually complete experience for all your customers, regardless of their device's age. It's all about making sure everyone can see your amazing products and convert those browsers into buyers!



