Bei dreispaltigen Layouts (Hauptspalte + 2 Sidebars links und rechts) läuft man im Responsive Design in ein Problem, wenn man mit einem Grid-System arbeitet. Wenn nämlich alle Elemente mit ‚float:left‘ nach links rutschen, müssen die beiden Sidebars im Template-Code über der Hauptspalte eingetragen werden.

In der Desktop-Ansicht stört das nicht weiter, der Betrachter kriegt von der Reihenfolge der Elemente im Code nichts mit.
Anders sieht das bei der Ansicht für Mobilgeräte aus. Hier sind die Spalten nicht mehr nebeneinander angeordnet, sondern alle Elemente sitzen untereinander. In der mobilen Ansicht tauchen also zuerst die beiden Sidebars auf und erst danach – viel weiter unten – kommt der Hauptinhalt. Und ist damit aus dem Blickfeld verschwunden.

Es ist natürlich ungünstig, wenn die Besucher ausgerechnet den wichtigsten Text/das wichtigste Bild nicht sehen können und auf dem kleinen Smartphone-Display nur die Sidebars erscheinen.

Um das Problem zu umgehen, muss man sich bei einem 3-spaltigen Layout von der Methode „float:left für alle“ lösen. Das Ziel ist es, das CSS so zu gestalten, dass die Hauptspalte im HTML-Code zuerst erscheinen kann. Erst danach kommen die beiden Sidebars.
Das erreicht man zum Beispiel dieser CSS-Lösung:

Die Elemente #sidebar-1 und #main-content werden von einem zusätzlichen div-container umschlossen. Dieses umschließende Element bekommt die Anweisung ‚float:left‘ und wandert damit links neben den #sidebar-2.