64 votes

Mettre en retrait uniquement la première ligne de texte d'un paragraphe ?

J'ai plusieurs paragraphes que je voudrais mettre en retrait, mais seulement les premières lignes de ces paragraphes.

Comment pourrais-je cibler uniquement les premières lignes à l'aide de CSS ou de HTML ?

3 votes

@Ricardo - Malheureusement non. Marquer une réponse comme le site La réponse est donnée uniquement à la personne qui a posé la question, et les pouvoirs en place n'ont pas l'intention de changer cela. En ce qui les concerne, pour le bien des autres personnes qui rencontrent la question, c'est à cela que sert le système de vote (la réponse la plus votée étant celle du "choix de la communauté", en gros).

2 votes

Pourquoi n'acceptez-vous pas une réponse ? Il y en a plusieurs bonnes ici.

181voto

alex Points 186293

Utilisez le text-indent propriété.

p { 
   text-indent: 30px;
}

jsFiddle .

32 votes

Je suis vraiment triste quand je vois une réponse ici sur Stackoverflwo qui m'aide, mais que le PO ne l'a pas acceptée... désolé, mon frère. Tu le méritais.

0 votes

Il semble que l'utilisateur ait cessé d'utiliser le S.E. moins d'un mois après que cette question ait été posée ou ait disparu.

0 votes

@paulotorrens la réponse acceptée devrait être celle qui a le plus de upvotes parce qu'elle aide la majorité et pas seulement le PO.

35voto

Wesley Murch Points 48959

En plus de l'indentation du texte, vous pouvez utiliser la fonction :first-line si vous souhaitez appliquer des styles supplémentaires.

p:first-line {
    color:red;
}

p {
    text-indent:40px;
}

http://jsfiddle.net/Madmartigan/d4aCA/1/

12voto

Shay Ben Moshe Points 743

Très simple en utilisant le css :

p {
    text-indent:10px;
}

Crée une indentation de 10 pixels dans chaque paragraphe.

4voto

Wayne Points 1

J'avais également un problème pour mettre en retrait la première ligne d'un paragraphe (seulement la première ligne) et j'essayais le code suivant :

p::first-line { text-indent: 30px; }

Cela n'a pas fonctionné. J'ai donc créé une classe dans ma CSS et l'ai utilisée dans mon html comme suit :

en CSS :

.indent { text-indent: 30px; }

en html :

<p class="indent"> paragraph text </p>

Cela a marché comme sur des roulettes. Je ne sais toujours pas pourquoi le premier exemple de code n'a pas fonctionné et je me suis assuré que le texte n'était pas aligné.

5 votes

La première ne fonctionne pas parce que ::first-line est un pseudo-élément sur lequel seul un sous-ensemble de propriétés CSS peut être appliqué. text-indent n'en fait pas partie. Voir developer.mozilla.org/en-US/docs/Web/CSS/::first-line

2voto

PaulBGD Points 374

Voilà :

p:first-line {
    text-indent:30px;
}

Je n'ai pas vu de réponse claire pour un débutant en CSS, alors en voici une facile.

4 votes

:first-line ne fonctionne pas, car le text-indent -n'a aucun effet sur cette propriété. Sans le pseudo-élément pour p il n'y a pas de problème. Le site text-indent -La propriété ne concerne que la première ligne de toute façon. Il n'y a donc aucune raison de ne cibler qu'une seule ligne en premier lieu. Voir aussi : developer.mozilla.org/en-US/docs/Web/CSS/::first-line y developer.mozilla.org/fr/US/docs/Web/CSS/text-indent

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X