0 Daumen
366 Aufrufe

Frage:

Muss ich einen <p> inhalt unbedingt in einen Container  einfügen damit der Textinhalt nicht ein weißen  Hintergrund mit sich bringt, sonder einfach auf dem Hintergrund Bild zu sehen . Leider hab ich unter "delete Background color" oder "background-transparency keinen passenden Befehl gefunden


Code:

Avatar von

1 Antwort

0 Daumen

CSS:

background-color: transparent;

Das ist der voreingestellte Wert. Falls deine <p> keinen transparenten Hintergrund haben, dann liegt das daran dass das irgendwo in deinem CSS geändert wurde.

Avatar von 5,7 k

Das sieht mir nicht danach nicht danach aus, als wenn ich das vor eingestellte geändert hätte. Allerdings funktioniert es wenn ich es in den Container packe, aber ich möchte es halt eben ohne den Container hinbekommen. Stattdessen schiebt sich der Text an den unteren und macht somit das Bild kleiner . Ich habe unten mal den Code beigefügt. Und hier noch ein Screenshot zu Veranschaulichung:

blob.png

Text erkannt:

biojdjmi
fnqnen nnnesocmimoi
nfeoneov scjvhrugtbnöcm
\( x \),wkd,dw,fejg ammxncnugenico

<title>european owls</title>

  <style>
    .header-image {
      height: 100vh;
      width: 100%;
      object-fit: cover;

      filter: brightness(0.5);
    }

    .container {
      position: absolute;
      right: 32px;
      top: 16px;
      font-size: 24px;
      display: block;
    }
    body {
      margin: 0;
    }

    .menu-link {
      color: rgb(27, 4, 4);
      text-decoration: none;
      margin-left: 16px;
    }
  </style>
</head>
<body>
  <img class="header-image" src="/Bilder/Eule.jpg" />
  <div class="container">
    <img class="logo" src="/Bilder/Logo.png" />

    <a class="menu-link" href=""><b>wiki-artikel</b></a>
    <a class="menu-link" href=""><b>search</b></a>
    <a class="menu-link" href=""><b>types</b></a>
    <a class="menu-link" href=""><b>where to find</b></a>
  </div>
  <p>
    oiojdjmi<br />jfnqncn nnncsocmimoi<br />mfeoneov scjvhrugtbnöcm<br />,x,wkd,dw,fejg
    ammxncnugcnico
  </p>
</body>
</html>

Wenn du dem body per CSS ein background-color: black; spendierst, dann wirst du merken, dass der Hintegrund des <p> überhaupt nicht weiß ist, sondern transparent. Es scheint nämlich der Hintergrund des Elternelementes (hier also des <body>-Elementes) durch.

Um zu verstehen, was in deinem Dokument tatsächlich passiert, erkundige dich über den Normal Flow, den Unterschied zwischen Block Level Elements und Inline Elements (siehe Preisfrage am Ende) und über Positioning. Insbesondere steht im Artikel über Positioning: "An absolutely positioned element no longer exists in the normal document flow. Instead, it sits on its own layer separate from everything else."

Kurz gesagt, dein .header-image und dein <p> sind im Normal Flow, dein .container ist es nicht.

Preisfrage: Wie kann man mittels CSS steuern, ob ein Element ein Block- oder ein Inline-Element ist?

Ich werde mich am Wochenende mal mit der Preisfrage befassen

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community