HTML: Wie kann ich die Titelbox verschieben?

1 Antwort

Wenn die linke Spalte nicht gebraucht wird, sollte sie auch nicht herausgerendert werden. Das heißt, der Browser sollte in diesem Fall nur so ein Markup für den Container erhalten:

<div class="container">
  <div class="right-column">
    <!-- ... -->
  </div>
</div>

Da du das HTML offensichtlich selbst definierst, sollte das kein Problem darstellen.

Im Notfall könnte man auch die linke Spalte mitsamt Trenner via CSS ausblenden, vorausgesetzt, das Element ist tatsächlich leer (keinerlei Kindelemente oder Text, inklusive Leerzeichen):

.whatis .left-column:empty,
.whatis .left-column:empty + .divider {
  display: none
}

Die linke Spalte hingegen leer, aber sichtbar mitsamt Trenner herauszurendern und die Überschrift über die rechte Spalte zu verschieben, erscheint für mich unlogisch. Zum einen zeigst du dann überflüssige Inhalte an (die von einem Seitenbesucher vermutlich als unästhetisch und fehlerhaft gewertet werden) und zum anderen unterbricht es den Lesefluss.

Wenn du es aber unbedingt erzwingen möchtest, wäre es besser, der Titelbox (.whatis-titlebox) eine zusätzliche Modifikatorklasse zuzuweisen, mit der sie verschoben wird.

Beispiel:

<div class="whatis-titlebox whatis-titlebox-right">
  <h2 class="whatis-title-txt">Über</h2>
</div>

CSS:

.whatis-titlebox-right {
  margin-left: calc(45% + 1px);
}

Elemente zu duplizieren und dann übereinanderzuschieben ist keine gute Idee.