-1
votes

Inclure l'élément d'entretien des enfants dans la décoration de texte

Lors de l'utilisation de texte-décoration sur un lien, l'élément enfant ( span code>) n'est pas inclus, alors le soulignement ne s'étend pas:

 Entrez la description de l'image ici p>

p>


5 commentaires

Les classes badge Supprimer les classes de badge (code> Supprimez le texte la décoration: Soulignez . Essayez de supprimer les classes et de vérifier le Souligner sur span


@ j08691 Voir la mise à jour


@ M4fi4s Voir la mise à jour - alors qu'elle hérite de bootstrap, pensait que cela pourrait aider ..


La décoration de texte est ajoutée à la portée - si vous zoomez, vous pouvez le voir. Souligné est ajouté sous des mots (et est dimensionné sur ce texte), non sous l'élément - si vous voulez une ligne sous l'ancre entière, utilisez le fond de la bordure à la place.


@Pete bon point mais ne sera pas placé sous l'élément et donc la ligne ne "couper pas" à travers des lettres comme "y", "g", etc.?


5 Réponses :


0
votes

Vous pouvez appliquer une décoration de texte à votre portée, mais il apparaîtra juste sous le texte de la plage et non en ligne avec le texte précédent. Pour le faire en ligne, vous devrez rendre votre étendue de la même hauteur que son conteneur parent. Sinon, vous pouvez utiliser probablement un pseudo élément (: avant ou: après) pour mettre la ligne où vous le souhaitez.


0 commentaires

0
votes

Cela se produit en raison de la spécification CSS selon laquelle disent fondamentalement, vous ne pouvez pas avoir de décoration de texte dans des éléments de bloc en ligne. Si vous envisagez également de la décoration de texte, vous devez modifier l'affichage : Inline-Block Strong>. Plus d'informations peuvent être trouvées dans cette question .

Juste pour vous montrer, comment cela fonctionnerait, si la portée était effectuée par la décoration de texte, voici un exemple: p>

p>

<a href="#">
   My title is here
   <span class="badge badge-dark">Special</span>
</a>


0 commentaires

0
votes

Vous pouvez utiliser la propriété bordure-bas code> au lieu de texte-décoration code>.

Voir aussi que j'ai changé le A code> à un Inline-Block CODE> ELEMENT. P>

P>

<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" rel="stylesheet" />


<div class="container">
  <div class="row">
    <div class="col">
      <a class="title-link" href="#">My title is here
      <span class="badge badge-dark">Special</span></a>
    </div>
  </div>
</div>


0 commentaires

0
votes

La taille de la police du contenu dans le badge est différente de celle du texte de la liaison et vous avez également un alignement de haut: -5px. Ces deux brisent la ligne et même sans utiliser le badge de bootstrap, vous obtiendriez la décoration de texte cassée. Oui, il s'étendrait au texte de la plage mais être brisé et ce ne serait pas ce que vous voulez. Et Bootstrap Badge a également le style de décoration de texte: aucun ... Une autre façon d'obtenir le soulignement en pointillé pour étendre le badge est de retirer la décoration de texte et d'utiliser la frontière comme celle-ci ci-dessous:

      a {
        font-size: 36px;
        border-bottom: 3px dotted rgb(221, 221, 221);
        color:  #000;
      }

      a:hover {
        color: #000;
        border-bottom: none;
      }


0 commentaires

1
votes

https://developer.mozilla.org/en -US / DOCS / Web / CSS / Texte-Décoration :

La propriété CSS sténographie-décoration Text-décoration définit l'apparition de lignes décoratives sur texte forts>. p> BlockQuote>

Cela signifie que le soulignement sera directement sous le texte en question et non sous l'élément. Si vous zoomez assez, vous verrez que le soulignement est en réalité sous le mot spécial p>

si vous souhaitez continuer la ligne sous spéciale, vous pourriez peut-être utiliser un élément pséduo pour votre badge et ajouter une non-rupture espaces pour s'asseoir dans: p>

p>

<a href="#" class="badge badge-dark">
   My title is here 
   &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</a>


1 commentaires

Vous pouvez également compter sur des pseudo-éléments et l'un d'entre eux ajoutera le & nbsp: