­
замечательно, особенно потому, что он работает во всех популярных браузерах. Вы помещаете это в середине слова, которое сообщает браузеру, что слово может быть сломанным в этом месте. Если он там сломается, появляется дефис. Если это не так, символ остается невидимым.Добавить мягкие дефисы в CMS: заставить его работать в Chrome
Но это не так просто для использования авторами контента: вам нужно зайти в HTML, чтобы добавить его. Даже если вы можете добавить в CMS, вы не можете видеть, где он находится, как только вы его вставили.
Итак, я пошел вперед и объявил встроенный стиль в моей CMS для моих авторов. Они могут выбрать часть слова, например <span class="shy">communi</span>cation
, а затем правило css волшебным образом добавит ­
с использованием псевдоэлемента ! И с некоторыми CMS-специфическими CSS я могу дать этому тегу пунктирное подчеркивание, чтобы показать, что у него есть один из этих мягких дефисов. Работает в Firefox и IE8 +. Ухоженная.
Но дефис не отображается в Google Chrome! Это сломает слово, но нет тире. Я знал, что он не поддерживает свойство css hyphens
, но он обычно поддерживает ­
.
Но все в порядке, поэтому я удалил стиль css и написал javascript для добавления при загрузке. Используя jQuery, я попробовал как .append
, так и .after
. Я даже попробовал innerHTML += '­'
. Никто из них не работает! Как неутешительно ...
Как обойти это?
Похоже, решение проблемы. Вместо этого вы должны подумать о том, как инструктировать авторов контента для ввода самого символа SOFT HYPHEN. (Существует много разных подходов к этому, но это не по теме в SO.) –
Возможность ввода этого символа разрешает только половину проблемы: возможно, это будет хорошо для сообщений, созданных только один раз, но это только временное решение для страниц, которые редактируются чаще. Во время редактирования на следующий день вы, возможно, забыли, куда вы положили персонажа, или если вы положили его вообще. Даже если вы знаете, это не очевидно, чтобы удалить, будучи легкомысленным и невольно удалять. Вот почему я хотел сделать это визуально очевидным. – Sygmoral