• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Przykrywanie tekstu przez tło po najechaniu przycisku

Cloud VPS
0 głosów
246 wizyt
pytanie zadane 28 sierpnia 2022 w HTML i CSS przez jasper93 Obywatel (1,310 p.)
edycja 28 sierpnia 2022 przez jasper93

Witam, napotkałem kolejny problem podczas robieniu animacji na przycisku, chciałbym by tło wyjeżdżające z lewej strony przycisku nie przykrywało tekstu, gdyby tło pod tekstem było koloru białego użyłbym właściwości transparent, a tak to w przypadku koloru szarego nie wiem jak podejść do tematu. Próba z z-index nie zdaje egzaminu, ma ktoś jakiś pomysł czy przy obecnej strukturze kodu da się coś zrobić??

 

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>Document</title>
  </head>

  <body>
    <button>button</button>
  </body>
</html>
body {
        text-align: center;
      }

      button {
        position: relative;
        padding: 10px 25px;
        font-size: 40px;
        margin-top: 100px;
        border: 2px solid black;
        background-color: grey;
        border-radius: 20px;
        box-shadow: 0 0 0 2px white, 0 0 0 4px black;
        overflow: hidden;
        color: black;
        transition: 0.25s 0.05s linear;
      }

      button::after {
        content: "";
        position: absolute;
        width: 0;
        height: 100%;
        bottom: 0;
        left: 0;
        background-color: #000;
        transition: 0.3s linear;
        /* z-index: -1; */
      }

      button:hover::after {
        width: 100%;
      }

      button:hover {
        color: white;
      }

 

1 odpowiedź

+1 głos
odpowiedź 29 sierpnia 2022 przez VBService Ekspert (256,600 p.)

z-index działa pod warunkiem, że ustawisz go i dla button-a i dla button::after  smiley

button {
  position: relative;
  padding: 10px 25px;
  font-size: 40px;
  margin-top: 100px;
  border: 2px solid black;
  background-color: grey;
  border-radius: 20px;
  box-shadow: 0 0 0 2px white, 0 0 0 4px black;
  overflow: hidden;
  color: black;
  transition: all 0.25s 0.05s linear;
  z-index: 1;
}

button::after {
  content: "";
  position: absolute;
  width: 0;
  height: 100%;
  bottom: 0;
  left: 0;
  background-color: #000;
  transition: 0.3s linear;
  z-index: -1;
}

 

1
komentarz 29 sierpnia 2022 przez jasper93 Obywatel (1,310 p.)
Znowu mi ratujesz życie, niby takie drobne rzeczy, a ciągle mam problem, żeby na nie wpaść.
komentarz 29 sierpnia 2022 przez jasper93 Obywatel (1,310 p.)
edycja 29 sierpnia 2022 przez jasper93
Jeszcze chciałem dopytać, dlaczego w przypadku z-index:0 w selektorze button::after tekst zostanie przykryty? Skoro index:0 jest mniejszy od z-index w selektorze button?? Wynika to z faktu, że z-index:0 nie zmienia nic w układzie, czy jest to inna zależność?
komentarz 30 sierpnia 2022 przez VBService Ekspert (256,600 p.)
komentarz 30 sierpnia 2022 przez jasper93 Obywatel (1,310 p.)
Właśnie czytałem ten watek i wolałem się upewnić, czyli z index: 0 to domyslna wartosc w stosunku do rodzica elementu, czyli tak naprawdę jakbym nie zmienił nic w z-index.

Podobne pytania

+2 głosów
2 odpowiedzi 247 wizyt
+1 głos
1 odpowiedź 190 wizyt
0 głosów
1 odpowiedź 327 wizyt
pytanie zadane 14 stycznia 2018 w HTML i CSS przez KonDZIKs Bywalec (2,850 p.)

93,469 zapytań

142,404 odpowiedzi

322,716 komentarzy

62,852 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Kursy INF.02 i INF.03
...