CodeGym /Cursos /Frontend SELF PT /Pseudoclasses e Pseudo-elementos

Pseudoclasses e Pseudo-elementos

Frontend SELF PT
Nível 7 , Lição 5
Disponível

10.1 Pseudoclasses

Pseudoclasses e pseudo-elementos em HTML e CSS permitem estilizar elementos com base em seu estado ou conteúdo, sem a necessidade de adicionar classes extras ou alterar a estrutura do documento HTML. Eles oferecem ferramentas incríveis para criar páginas web interativas e visualmente atraentes.

Pseudoclasses são aplicadas a elementos com base em seu estado ou posição na estrutura do documento. Elas ajudam a estilizar elementos em várias situações, como quando o cursor passa sobre eles, quando estão em foco ou quando são selecionados. As pseudoclasses começam com dois pontos (:).

As pseudoclasses mais simples:

A pseudoclasse :hover é aplicada a um elemento quando o usuário passa o cursor sobre ele.

HTML
    
      <button type="button">Button</button>
    
  
CSS
    
      button:hover {
        color: red;
      }
    
  

A pseudoclasse :focus é aplicada a um elemento quando ele recebe foco, por exemplo, ao clicar em um campo de entrada.

HTML
    
      <input type="text">
    
  
CSS
    
      input:focus {
        outline-color: blue;
      }
    
  

A pseudoclasse :active é aplicada a um elemento quando ele está ativo, por exemplo, quando clica em um link ou botão.

HTML
    
      <button type="button">Botão</button>
    
  
CSS
    
      button:active {
        background-color: green;
      }
    
  

A pseudoclasse :visited é aplicada a links que o usuário já visitou.

HTML
    
      <a href="#">Link</a>
    
  
CSS
    
      a:visited {
        color: purple;
      }
    
  

10.2 Pseudo-elementos

Pseudo-elementos permitem estilizar partes dos elementos que não são elementos HTML separados. Eles começam com dois dois pontos (::). Os pseudo-elementos são usados para criar e estilizar conteúdos antes ou depois de um elemento, destacar a primeira linha ou primeira letra de um elemento e outras tarefas.

Os pseudo-elementos mais simples:

O pseudo-elemento ::before insere conteúdo antes do conteúdo de um elemento.

HTML
    
      <p>Meu nome é Stepan.</p>
    
  
CSS
    
      p::before {
        content: "Olá! ";
        color: blue;
      }
    
  

O pseudo-elemento ::after insere conteúdo após o conteúdo de um elemento.

HTML
    
      <p>Atenção!</p>
    
  
CSS
    
      p::after {
        content: " Obrigado pela atenção!";
        color: red;
      }
    
  

O pseudo-elemento ::first-line é aplicado à primeira linha de um elemento. Ele permite estilizar apenas a primeira linha de texto.

HTML
    
      <p>
       Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute
        irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat
        cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
      </p>
    
  
CSS
    
      p::first-line {
        font-weight: bold;
        color: green;
      }
    
  

O pseudo-elemento ::selection é aplicado ao texto selecionado pelo usuário.

HTML
    
      <p>
        Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
        Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
      </p>
    
  
CSS
    
      ::selection {
        background-color: blue;
        color: yellow;
      }
    
  

Tente selecionar o texto no resultado.

10.3 Exemplos de uso de pseudo-elementos

Pseudoclasses e pseudo-elementos em HTML e CSS oferecem ótimas oportunidades para estilizar elementos com base em seu estado ou conteúdo. Eles permitem criar páginas web mais interativas e visualmente atraentes sem alterar a estrutura do HTML.

Exemplo 1: Inserindo um ícone antes do texto do link

HTML
    
      <html>
        <head>
          <style>
            a::before {
              content: "🔗";
              margin-right: 5px;
            }
          </style>
        </head>
        <body>
           <a href="#">Este é um link com ícone</a>
        </body>
      </html>
    
  

Exemplo 2: Adicionando um bloco estilizado após o parágrafo

HTML
    
      <html>
        <head>
          <style>
            p::after {
              content: "🌟";
              display: block;
              text-align: center;
              margin-top: 10px;
            }
          </style>
        </head>
        <body>
           <p>Este é um parágrafo de texto.</p>
        </body>
      </html>
    
  

Combinando

Pseudoclasses e pseudo-elementos podem ser combinados para criar estilos complexos e poderosos.

Exemplo: Estilizando texto selecionado dentro de um link quando o cursor passa sobre ele

HTML
    
      <html>
        <head>
          <style>
            a:hover::selection {
              background-color: lightblue;
              color: navy;
            }
          </style>
        </head>
        <body>
          <a href="#">Selecione este texto e depois passe o cursor sobre ele.</a>
        </body>
      </html>
    
  
1
Опрос
Formatos de multimídia,  7 уровень,  5 лекция
недоступен
Formatos de multimídia
Formatos de multimídia
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION