Как удалить эти надоедливые дополнительные пробелы

#html #unicode #notepad #dreamweaver #hidden-characters

#HTML #css #wordpress

Вопрос:

Верхний виджет на моей странице WordPress показывает свойство height, когда я проверяю его с помощью Chrome developer tools, и эта высота добавляет дополнительные пробелы сверху и снизу виджета (показано желтым на прикрепленном изображении).

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

Пожалуйста, помогите!!

введите описание изображения здесь

Ответ №1:

кажется, у вас много amp;#8203; последовательностей Юникода до и после вашего элемента в исходном коде, вызывающих все это нежелательное пространство. (они видны с помощью firebug)

последовательности Юникода

вы не можете видеть их в исходном коде, потому что этот символ является «ПРОБЕЛОМ НУЛЕВОЙ ШИРИНЫ» (U 200B)

Комментарии:

1. Я проверяю источник страницы, но не вижу никаких ‘amp; # 8203;’, я также удалил все возможные пробелы в окне редактирования виджетов в WordPress, у других виджетов нет этой проблемы, и они были созданы таким же образом

2. Специальные символы, которые вы не видите (это специальные пробелы), которые вы каким-то образом ввели (возможно, из-за операции копирования и вставки). найдите их в firebug и попробуйте изменить исходный код оттуда, удалив эти последовательности.

3. итак, как мне избавиться от них? Это текстовый виджет, и у многих других, которые у меня есть, такой проблемы нет:(

4. для обходного пути установлена #textwidget высота ~ 132 пикселей, поэтому вы должны удалить лишнее пространство внизу (но, конечно, вы должны использовать его в качестве последнего средства)

5. Я вставил код из jsfiddle, однако теперь я попытался очистить код, вставив его в блокнот, а затем снова скопировав его оттуда, но это не помогло. Я также пытался создать другой виджет с тем же содержимым, но у него та же проблема.

Ответ №2:

вы можете удалить их с помощью regex. js:

 HTML = HTML.replace(/[u200B-u200DuFEFF]/g, '');
  

c#

 hVal = Regex.Replace(hVal, "[\u200B-\u200D\uFEFF]", "");