"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como criar um mixin de espaço reservado em SCSS/CSS usando @content e @at-root?

Como criar um mixin de espaço reservado em SCSS/CSS usando @content e @at-root?

Publicado em 19/11/2024
Navegar:884

How to Create a Placeholder Mixin in SCSS/CSS Using @content and @at-root?

Placeholder Mixin em SCSS/CSS

Você está enfrentando um problema ao criar um placeholder mixin no Sass devido à presença de dois pontos e ponto e vírgula nas propriedades CSS passadas para o mixin.

Para superar esse desafio, utilize a diretiva @content em seu mixin:

@mixin placeholder {
  ::-webkit-input-placeholder {@content}
  :-moz-placeholder           {@content}
  ::-moz-placeholder          {@content}
  :-ms-input-placeholder      {@content}  
}

Agora você pode incluir o mixin da seguinte maneira:

@include placeholder {
    font-style: italic;
    color: white;
    font-weight: 100;
}

Além disso, o Sass 3.4 introduz a diretiva @at-root, permitindo que você escreva seu mixin de uma maneira que funcione em contextos aninhados e não aninhados:

@mixin placeholder {
  @include optional-at-root('::-webkit-input-placeholder') {
    @content;
  }

  @include optional-at-root(':-moz-placeholder') {
    @content;
  }

  @include optional-at-root('::-moz-placeholder') {
    @content;
  }

  @include optional-at-root(':-ms-input-placeholder') {
    @content;
  }
}

Ao usar @at-root em conjunto com @content, você garante que seu mixin funcione corretamente em todos os cenários.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3