Πώς να κάνετε αλλαγή γραμμής από το css, χωρίς να χρησιμοποιήσετε το <br />?

έξοδος:

<p>hello <br> How are you </p>

κωδικός:

Γεια σας. Πώς είστε;

Πώς να επιτύχετε την ίδια έξοδο χωρίς <br>;

Λύση

Αδύνατον με την ίδια δομή HTML, πρέπει να έχετε κάτι για να διακρίνετε μεταξύ του "Γεια σας" και του "Πώς είστε".

Προτείνω να χρησιμοποιήσετε span τα οποία στη συνέχεια θα εμφανίσετε ως μπλοκ (ακριβώς όπως ένα <div> στην πραγματικότητα).

HTML:

<p><span>hello</span><span>How are you</span></p>

CSS:

p span 
{
    display: block;
}
Σχόλια (7)

Μπορείτε να χρησιμοποιήσετε το white-space: pre; για να κάνετε τα στοιχεία να συμπεριφέρονται σαν <pre>, το οποίο διατηρεί τις νέες γραμμές. Παράδειγμα:


 p {
  white-space: pre;
 }

<p>hello
How are you</p>

Σημειώστε ότι αυτό δεν λειτουργεί στον IE6 ή τον IE7. Δεν γνωρίζω για τον IE8.

Σχόλια (4)

Οι απαντήσεις τόσο του Vincent Robert όσο και του Joey Adams είναι έγκυρες. Αν δεν θέλετε, ωστόσο, να αλλάξετε τη σήμανση, μπορείτε απλώς να εισάγετε ένα <br /> χρησιμοποιώντας javascript.

Δεν υπάρχει τρόπος να το κάνετε αυτό στο CSS χωρίς να αλλάξετε το markup.

Σχόλια (2)