Спецсимволи

В проекті теплохода КолесовЪ нам зустрічалися такі символи, як знак копірайта і кавички у вигляді ялинок:
    © Банкетный теплоход КолесовЪ
    «Колесовъ»

Як правило - подібні символи записуються їхніми html-кодами, для того, щоб вони не похєрилися при конвертації кодувань, чи для того, щоб дати зрозуміти браузеру, що знаки < та > - це знаки менше/більше, а не якийсь тег.

© - &copy;
< - &lt;
> - &gt;
« - &laquo;
» - &raquo;
& - &amp;
&nbsp; - символ нерозривного пробілу, а також ми будемо ним користуватися як "примусовим пробілом".

Після кожного коду обов'язково ставимо крапку з комою.

Весь перелік кодів символів легко знайти в гуглі: "html код символа".

Коди символів можуть мати вигляд &#6527; - це номер символа в Unicode-таблиці.

 

Звичайний пробіл в деяких місцях може ігноруватися і пустий блок схлопнеться (не буде відображений).

Нерозривні пробіли можна використовувати для того, щоб такі блоки не схлопувалися:

<p>Строка 1<p>
<p></p>
<p>Строка 3</p>
<p>    </p>
<p>Строка 5</p>
<p>&nbsp;</p>
<p>Строка 7</p>

Результат (для <p> задані нульові відступи - margin:0; padding:0;):

Строка 1

Строка 3

Строка 5

 

Строка 7

Нерозривні пробіли використовуються відповідно правил типографіки щоб заборонити переносити на іншу строку ініціали, одиниці вимірювання, скорочення і т.п.

32 кг. = 32&nbsp;кг;
Іванов С.К. = Іванов&nbsp;С.К.
р. Дністер = р.&nbsp;Дністер;

Ну і небажане використання нерозривного пробілу в якості заповнювача простору:

Адмін:         +38 (068) 123-45-67

<p>
  Адмін: &nbsp; &nbsp; &nbsp; &nbsp; +38 (068) 123-45-67
</p>

Такі пробіли не схлопуються, але їх використання тут не бажане, не доречне, користуйтеся відступами, вирівнюванням блоків і т.п.

"Легальний" спосіб використання нерозривних пробілів - користувацький ввід: наприклад, є поле вводу, куди користувач вводить деяку інформацію. Далі ця інформація повинна у такому ж виді відобразитися в деякій <p>, зберігаючи усі пробіли. В цьому випадку скриптом варто замінити кожну пару пробілів на " &nbsp;"

Ну і я в лекціях використовую нерозривні пробіли в блоках кода для того, щоб зформувати сходинки ієрархії блоків.