# CSS or responsive display bugs after a PrestaShop theme change

> A menu that breaks on mobile, a modified CSS file that looks "ignored" after a theme change: in the vast majority of cases, the file isn’t being ignored, it’s simply cached. PrestaShop combines and caches CSS and JS files by default, and keeps serving the old version until that cache is cleared.

- Source canonique : [https://allaux.fr/en/prestashop/problemes/bugs-css-responsive-apres-theme](https://allaux.fr/en/prestashop/problemes/bugs-css-responsive-apres-theme)
- Langue : EN
- Dernière mise à jour : 2026-09-30

## Direct answer

> Go to Advanced Parameters > Performance and temporarily switch off the combination and compression of CSS and JS files, then clear the cache: if your change shows up at once, it was simply frozen inside the combined file. Reload in a private window to rule out the browser cache before reopening any theme file.

## The CCC cache: the most common and most misunderstood cause

PrestaShop has a native feature that combines, compresses and caches CSS and JS files, configurable under Preferences > Performance. It merges several files into one to speed up loading, then keeps that combined file cached. After a CSS change, if this cache isn’t cleared, the site keeps showing the old combined version: the CSS "looks ignored" even though it was genuinely changed on disk.

Another common cause: a CSS file added directly into the theme’s files rather than through a module or a proper override. That direct edit gets overwritten without warning at the next theme update, which looks like a bug reappearing.

## A grid system change between PrestaShop versions

The CSS grid structure changes significantly between PrestaShop 1.6, whose default theme is built on Bootstrap 3 (col-xs-12, img-responsive, pull-right classes), and PrestaShop 1.7/8, whose Classic theme is built on Bootstrap 4 (col-12, img-fluid, float-right classes). Copying a CSS class from a tutorial written for one of the two and applying it to the other generally breaks the layout, especially on mobile.

## A broken menu or header, often the same family of cause

> A main menu that collapses badly, or a header overlapping the content, most often comes from the same mechanism: an uncleared CCC cache, or a theme JavaScript file conflicting with a module added afterwards.

## Configuration or development?

Clearing the CCC cache and checking you’re editing the right CSS file in the right place resolves most cases. It becomes development when a direct theme edit needs properly reworking into a clean override that survives updates, or when a grid built for the wrong Bootstrap version needs correcting.

## Related pages

- **Product combination bugs on PrestaShop** — When the size or colour selector displays badly on mobile, a related theme-linked case. ([/prestashop/problemes/declinaisons-produits-bugs](/prestashop/problemes/declinaisons-produits-bugs))
- **PrestaShop shop loading slowly** — The same CCC cache also has a direct effect on page loading times. ([/prestashop/boutique-lente](/prestashop/boutique-lente))
- **PrestaShop 1.6 to 1.7 or 8 migration** — To understand the scale of theme and grid changes involved in a major version upgrade. ([/prestashop/migration](/prestashop/migration))

## FAQ

### I changed my CSS but nothing changes on the site, why?

First check whether the CCC cache (Preferences > Performance) is enabled. If it is, clear it or temporarily disable file combination to see the change take effect immediately.

### Why did my change disappear after a theme update?

Because it was probably made directly in the theme’s files, which get replaced on update. A lasting change should go through a module or a dedicated override, not the theme file itself.

### A tutorial I found online doesn’t work on my PrestaShop version, why?

Check which PrestaShop version the tutorial targets. Grid CSS classes differ between PrestaShop 1.6 (Bootstrap 3) and 1.7/8 (Bootstrap 4), and mixing them breaks the layout.

### The main menu only breaks on mobile, is that cache-related?

It can be, but it’s also often a JavaScript conflict between the theme’s script and a module added afterwards. The two causes are diagnosed differently, which is why testing without cache first is worthwhile.

### Do I need a developer to fix a display bug after a theme change?

Not necessarily: clearing the cache and checking the right file is often enough. Development is needed to properly rework a direct theme edit or adapt a grid to the right Bootstrap version.
