Как сделать так, чтобы блоггер вставлял теги <p> вместо <br> при использовании текстового редактора?


10

Мне не нравится, как, когда я использую текстовый редактор в Blogger, и я нажимаю на Enterнего, вставляет <br >вместо a <p>. Есть ли способ заставить поведение измениться? Или, по крайней мере, есть ли способ вставить <p>без перехода на вкладку HTML?

Кстати, я использую Blogger в проекте . Я попробовал и старый редактор и новый; и использование Press "Enter" for line breaksвместо Use <br /> tagsне помогает.

Я также попытался отключить Convert Line breaks, который описывается как:

Если выбрано «Да», одиночные возвраты, введенные в редакторе сообщений, будут заменены на отдельные <br />теги в вашем блоге, а два жестких возврата будут заменены двумя тегами ( <br /><br />).


Ужасный обходной путь, но если вы хотите избавиться от двойных разрывов строк, вы можете скрыть вторую <br/>с помощью правила CSS, как br+br {display: none}​в Theme > Edit HTML, где вы найдете кучу стилей под<head><b:skin><![CDATA[...
ccpizza

Ответы:


10

Это поведение не настраивается. И текущий редактор, и черновой редактор, и «старый» редактор используют комбинацию BR и DIV-тегов, когда они должны использовать P-теги.

Это ошеломляющее решение, и оно совершенно неверно. Это объясняет множество проблем с непоследовательным отображением абзацев в Blogger. Возможно, он работает в IE, но не работает согласованно в браузерах webkit, таких как Chrome и Safari.

Я думаю, что самый новый редактор вставляет два последовательных тега BR, но более старый из них вставил один DIV и один BR.

Windows Live Writer от Microsoft делает все правильно, как указано выше. MarsEdit для OS X менее последовательный, я думаю, что если он начинается с публикации, созданной Blogger, это приводит к путанице в тегах.

Я чувствую твою боль.


Но может ли Live Writer редактировать существующий пост? Поскольку многие люди, включая меня, любят публиковать статьи, читать и полировать.
Gqqnbig

4

Я только что узнал, что если вы сразу же публикуете запись в своем блоге, содержащую p-теги, а не сначала переключаетесь на вкладку HTML, тогда p-теги остаются.

Пример:

<p>
Here is a body text<br />
that is wrapped in p-tags<br />
</p>
  1. Перейти к просмотру HTML.
  2. Введите код выше.
  3. Нажмите кнопку «Опубликовать».

Если вы попытаетесь просмотреть код на вкладке HTML, p-теги будут заменены тегами div.



0

Ну, нет способа настроить его с помощью Blogger.

Но я понял, что это можно сделать с помощью jQuery.

Для этого вам нужно перейти в область шаблонов и нажать «редактировать HTML». Сделайте поиск /body. Чуть выше вставьте и <script src="http://code.jquery.com/jquery-1.10.1.min.js">вставьте <script></script>. То, что у вас есть сейчас, должно быть таким:

some code
<script src='http://code.jquery.com/jquery-1.10.1.min.js'/>
<script>

This is where the jQuery calls will go.

</script>
&lt/body&gt;
some more code

Надлежащие вызовы jQuery можно выяснить на этой странице, на которой они приводят пример, почти точно спрашивающий, что вы хотите сделать. Этот пример был скопирован ниже (с http://api.jquery.com/contents/ )

<div class="container">
  Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed
  do eiusmod tempor incididunt ut labore et dolore magna aliqua.
  <br><br>
  Ut enim ad minim veniam, quis nostrud exercitation ullamco
  laboris nisi ut aliquip ex ea commodo consequat.
  <br><br>
  Duis aute irure dolor in reprehenderit in voluptate velit
  esse cillum dolore eu fugiat nulla pariatur.
</div>

Мы можем использовать .contents()метод, чтобы помочь преобразовать этот фрагмент текста в три правильно сформированных абзаца:

$( ".container" )
  .contents()
    .filter(function() {
      return this.nodeType === 3;
    })
      .wrap( "<p></p>" )
      .end()
    .filter( "br" )
    .remove();

Конечно, вам нужно будет сделать несколько небольших изменений, чтобы все заработало. Но это я оставлю для вас, чтобы выяснить. :-)

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.