La ligne droite après le texte
J'aimerais avoir une ligne qui commence juste après mon texte sur la même ligne, j'ai essayé avec le code simple suivant
<html><body>My Text<hr/></body></html>
Il semble que <hr>
n'est pas une option, car il est toujours sur une nouvelle ligne et je voudrais que la ligne commence à la droite de mon texte.
Toute aide ?
- Quel est le but de cette ligne? La raison pour laquelle les RH s'affiche ci-dessous(par défaut), c'est l'ensemble de point: cette balise est censé indiquer un diviseur. Si la ligne que vous essayez d'atteindre est juste décoratif, il y a d'autres moyens plus appropriés à cette approche. (Je prends un coup au-dessous.) Il y a aussi un peu de marge de manœuvre dans cette question d'interprétation; vous pouvez ajouter une image de exactement ce que vous voulez dire par "sur la même ligne."
Vous devez vous connecter pour publier un commentaire.
La
<hr>
a défaut de style qui le met sur une nouvelle ligne. Cependant que par défaut le style peut être contournée, de la même manière que pour tout autre élément.<hr>
est rien de plus qu'un vide<div>
avec une bordure par défaut de réglage.Pour démontrer cela, essayez ce qui suit:
Il y a un certain nombre de façons de remplacer le style de
<hr>
pour réaliser votre but.Vous pouvez essayer d'utiliser
display:inline-block;
avec unwidth
paramètre, comme je l'ai ci-dessus. L'inconvénient de cette approche est qu'elle nécessite de connaître la largeur que vous voulez, mais il ya des façons de contourner cette -width:100%;
, et l'ensemble de la ligne dans un récipient<div>
qui aoverflow:hidden;
pourrait faire l'affaire, par exemple:Une autre option serait d'utiliser
float:left;
. Vous avez besoin de l'appliquer à tous les éléments de la ligne, et je n'aime pas cette option car je trouve quefloat
a tendance à causer plus de problèmes qu'elle n'en résout. Mais essayez-le et voyez si cela fonctionne pour vous.Il y a diverses autres combinaisons de styles, vous pouvez essayer de lui donner un aller et voir ce qui fonctionne.
À l'aide de FlexBox Propriété de ce qui peut être réalisé facilement.
CSS:
HTML:
Essayez ceci:
<html><body>My Text<hr style="float: right; width: 80%"/></body></html>
Les CSS
float: right
va le garder sur la même ligne que le texte.Vous aurez besoin d'ajuster la
width
si vous voulez remplir le reste de la ligne.À l'aide de
inline
oufloat
, autant que j'ai testé, ça ne fonctionne pas correctement, même si cela a été ma première pensée. En regardant de plus j'ai utilisé le code css suivanthtml
Démo http://jsfiddle.net/mFEWk/
Ce que j'ai fait est d'ajouter la position relative de ces deux éléments (pour me donner l'avantage de
z-index
utilisation). Aussi à partir du moment où j'ai euposition:relative
pourhr
je l'ai déplacé à partir de labottom:17px
. Ce déplacer au-dessus de ladiv
qui contient le texte. L'application dez-index
valeurs et l'ajout debackground:white
pour ladiv
met le texte au-dessus de la ligne. Bien sûr, n'oubliez pas d'utiliser unwidth
pour le texte, sinon prendra toute la largeur de l'élément parent.HTML:
Exactement ce que vous voulez.
De l'essayer. Il fonctionne
Vous pouvez également utiliser cette option pour tracer une ligne entre les textes comme
Bonjour -------------------------- Bonjour
Ce genre de sens?
Ici est une approche possible, mais il y a des hypothèses/exigences. Votre question doit être modifié pour donner des renseignements plus précis sur ce que vous êtes en train de construire.
L'OP jamais précisé à la fin de la ligne, mais je voulais partager ce que j'ai fait lorsque j'ai été faire un modèle html où l'utilisateur a besoin d'une ligne à écrire sur après que le document a été imprimé.
Parce que les rh, les valeurs par défaut à sa propre ligne et la valeur par défaut étant centré dans la ligne, j'ai décidé d'utiliser un div et le style à la place.
HTML
CSS
JSFiddle Démo
Style de la Div pour la Ligne Après le Texte
Espère que ça aide quelqu'un qui avait le même objectif que moi.
J'ai utilisé la technique suivante:
Donner le conteneur div une image de fond d'écran avec une ligne horizontale.
Mettre un élément (comme
<h3>
) dans le conteneur div (je l'ai sur la droite afinfloat: right;
)Utiliser le code css suivant: