Отримайте підкреслений текст за допомогою Markdown


114

Я використовую BlueCloth як бібліотеку Markdown для Ruby, і не можу знайти жодного синтаксису для підкреслення тексту. Що це?

Відповіді:


138

У Markdown немає визначеного синтаксису для підкреслення тексту.

Я думаю, це тому, що підкреслений текст важко читати, і що він зазвичай використовується для гіперпосилань.



45

Ще одна причина - <u>теги застарілі в XHTML та HTML5, тому потрібно створити щось на зразок <span style="text-decoration:underline">this</span>. (IMHO, якщо <u>застаріло, так повинно бути <b>і <i>.) Зауважте, що Markdown створює <strong>і <em>замість, <b>і <i>відповідно, що пояснює призначення тексту в ньому замість його форматування. Форматування має оброблятися таблицями стилів.

Оновлення: <u>елемент більше не засуджується в HTML5.


Семантичний аналог <u>є <ins>; це ніколи не застаріло.
Toby Bartels

3
@TobyBartels Я не впевнений, що ти маєш на увазі. "Елемент <u> являє собою проміжок тексту з неартикульованою, хоча явно наданою, нетекстовою анотацією", тоді як "елемент <ins> являє собою доповнення до документа". Це дві семантично дуже різні речі.
jordanbtucker

4
Я маю на увазі, що <u>це зовсім не семантичний тег, поки <ins>є. Однак вони традиційно надаються однаково. Так само <ins>є семантичним аналогом <u>, а <u>синтаксичним аналогом <ins>. Ну, навіть якщо вам не подобається , як я описати це, справа в тому , що ми маємо таку аналогію: <u>: <ins>:: <i>: <em>:: <b>: <strong>. (Також <s>:. <del>)
Toby Bartels

2
@TobyBartels Ах, я неправильно тебе зрозумів. Я думав, ти говориш, що <u> і <ins> семантично рівнозначні. Специфікація HTML5 фактично дала семантичні значення <u>, <i>, <b> і <s>, які відрізняються від своїх стилістично схожих аналогів, але я бачу ваш погляд.
jordanbtucker

39

Простий <u>some text</u>повинен працювати для вас.


6
Вау, справді може бути <b> і <i>, але не <u>? Чому це? :(
Пітер

3
Я згоден: чому це? Розмітка (або будь-яка мова, як це) повинна полегшувати звичайні речі, які люди хочуть робити (наприклад, підкреслення слів), а не важче або неможливіше.
Тайлер Рік

2
Можливо, тому, що <u> більше не слід використовувати для простого підкреслення в HTML5 ...
s.krueger

1
@ s.krueger Прочитайте html.spec.whatwg.org/multipage/semantics.html#the-u-element . <u>може використовуватися для підкреслення, але не рекомендується "там, де це може бути переплутано за гіперпосилання".
jordanbtucker

1
@ s.krueger Я думаю, що терміни "неартикульований" та "явно наданий" - це саме ті випадки, які тут обговорюються. Коли ви не можете покластися на CSS, що може бути у випадку з Markdown, <u>ваш найкращий варіант для явного підкреслення. Звичайно, слід використовувати більш смислові елементи, коли це можливо.
jordanbtucker

11

Ви можете написати **_bold and italic_**та перенастроїти його на підкреслений текст, наприклад:

strong>em,
em>strong,
b>i,
i>b {
    font-style:normal;
    font-weight:normal;
    text-decoration:underline;
}

7
-1 Мені це здається злому, я вважаю за краще розуміти мотивацію, яка полягає в тому, що виключення не буде випадковістю.
Філ Хаузер

2
приємний хак. для ситуацій, коли ви не можете використовувати теги HTML, це чудово.
Ши-Мін Лі

1
Схоже на надмір.
Лапа в даних

8

У ноутбуках Юпітера ви можете використовувати Markdown наступним чином для підкресленого тексту. Це схоже на HTML5: ( <u>і </u>).

<u> Bolded Words Here </u>


0

І те, <ins> text </ins>і <span style="text-decoration:underline"> text </span>Joplin чудово працюють, хоча я погоджуюся з @nfm, що підкреслений текст виглядає як посилання і може вводити в оману в Markdown.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.