migmit: (Default)
[personal profile] migmit
Мы сейчас на работе делаем один побочный проект — в общем, часть нашего контента пихаем на фейсбук.

Контент мы представляем в виде более-менее HTML, и нам нужно, чтобы фейсбук посмотрел на этот контент и сказал "OK". Естественно, у них там кое-какие замечания, мы их исправляем; порой нам тоже не нравится, как выглядит опубликованный контент, и мы немножко его меняем. Рабочий процесс.

И вот, кто-то заметил, что цитаты (<blockquote>) выглядят не очень-то здорово: между абзацами (<p>) в них нет интервалов. Некрасиво.

Понятно, что это — проблема оформления, а не содержания. Будь это наш сайт, мы бы поправили стилевые правила, и контент вообще не трогали бы. Но это фейсбук; доступа к стилям у нас почти нет.

Я обратился к их техподдержке: что нам делать? Вскоре пришёл ответ: вставьте между абзацами <br> (насильственный перевод строки).

На этом месте и я и мои коллеги нервно сглотнули. Проблему оформления предлагается решать изменением содержания? Ладно, я добавил соответствующий код. Упс — не помогает.

Я снова в техподдержку: ребята, ваш ответ, во-первых, дурацкий, а во-вторых не работает. От них приходит новый совет, причём от того же "консультанта": вставьте ДВА <br>.

В нашем внутреннем чате пошла ругань: они там что, вообще ..? Но ладно, я добавляю. Вертикальные интервалы между абзацами появляются. Я оставляю ехидный комментарий в стиле "какое, милые, у нас тысячелетье на дворе?" и закрываю вопрос.

Через некоторое время приходит очередная пачка замечаний от фейсбука по поводу нашего контента. Среди них такой: у вас в тексте слишком много <br>.

Разработчики ругаются в голос. Я переоткрываю вопрос и пишу: ребята, вы там вообще определитесь, куда двигаться?

Окончательный ответ: "тогда заткнитесь и привыкайте жить без интервалов". И вопрос снова закрыт.

Сейчас один из коллег пытается пробиться к кому-нибудь за первой линией техподдержки; чувствую, будет продолжение.

Date: 2016-01-28 08:35 am (UTC)
From: [identity profile] vladicusmagnus.livejournal.com
Ребята, пардон, но вы сами с тем что не работает намудрили. Первый перевод строки закрывает абзац и кидает на следующую строку, и собсно на ней вы и пишете, и если надо ПРОПУСК, то ессно надо второй перевод делать, а как иначе то?
Так что первый по этому пункту скорее к вашей тиме вопросы.

А вот про количество и куда двигаться - вопросы действительно открытые должны быть.

ЗЫ. Смотрю с позиции человека который сам занимался в свое время парсингом HTML документов на низкоуровневых языках программирования. Просто частая ошибка начинающих была именно в количестве переводов строк.

Date: 2016-01-28 09:58 am (UTC)
From: [identity profile] migmit.livejournal.com
Нет. Перевод строки не закрывает абзац. Перевод строки переводит строку.

Для ясности. Вот такой код:
<p>
  blablabla
</p>
<p>
  blablabla
</p>
даёт ожидаемый результат: два абзаца и вертикальный интервал между ними.

Вот такой код:
<blockquote>
  <p>
    blablabla
  </p>
  <p>
    blablabla
  </p>
</blockquote>
даёт цитату с двумя абзацами БЕЗ интервала между ними.

Вставлять <br>, а особенно две штуки — это как форматировать пробелами.
Edited Date: 2016-01-28 09:59 am (UTC)

Date: 2016-01-28 10:03 am (UTC)
From: [identity profile] migmit.livejournal.com
Что они в итоге предложили — это сделать код таким:
<blockquote>
  <p>
    blablabla
  </p>
  <br />
  <br />
  <p>
    blablabla
  </p>
</blockquote>
Edited Date: 2016-01-28 10:03 am (UTC)

Date: 2016-01-28 10:07 am (UTC)
From: [identity profile] vladicusmagnus.livejournal.com
А!!! Понял. Абзац уже закрыт и автоматом переход сделан, но в цитате возникает проблема. И это проблема на стороне не вашей. Всо понял.

Ну, на самом деле, да, лучше избегать юзать такие вещи, но что делать если движок по другому не умеет и так понимает только? Я к тому, что обычного ф-ла должно было хватить, но он малость кривоват, поэтому надо либо решать вопрос с blockquote либо форматировать с помощью br. На самом деле, не самый страшный вариант :) Бывают и похуже :)

ЗЫ. Совсем забыл что ЖЖ понимает много тэгов, блин :)
Edited Date: 2016-01-28 10:08 am (UTC)

Date: 2016-01-28 10:11 am (UTC)
From: [identity profile] migmit.livejournal.com
'&lt;' -> '<'
'&gt;' -> '>'
'&amp;' -> '&'

Date: 2016-01-28 10:15 am (UTC)
From: [identity profile] vladicusmagnus.livejournal.com
Ага, в курсе. Но так как давно вебом не интересуюсь (в узких только направлениях, подцепить, загрузить ссылку и прочее, без парсинга особого), практической ценности для меня они не представляют, поэтому забываю про них :)