Проблема с копированием и вставкой CSS

Я разработал в своем приложении систему, в которой электронные письма собираются с помощью регулярного выражения, а затем меняются местами в источнике (чтобы помешать ботам). Затем я добавляю класс span «запутать электронную почту». Затем я использую CSS, чтобы отменить отображение текста, а Javascript проверяет, что ссылки mailto: по-прежнему работают.

Я был очень доволен своим решением, пока не понял, что копирование и вставка электронного письма помещает его в буфер обмена в обратном порядке. Мне было интересно, есть ли способ исправить это? Я тестировал Firefox 3 для OS X.

Соответствующая страница доступна здесь: http://www.leaklocations.com.au/contact-us/

Чтобы увидеть проблему, просто скопируйте и вставьте электронное письмо на этот сайт.

Лично я бы предпочел не беспокоиться об этом и принять спам-удар. Хотя я использую спам-фильтр с точностью 99,5%. :)

Marc Charbonneau 16.01.2009 05:18
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
0
1
374
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

Вы можете использовать тот же Javascript, чтобы перевернуть текст, а также ссылки mailto. Если у пользователя нет Javascript, вы можете решить эту проблему или использовать изображение.

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

strager 16.01.2009 05:59

Да, прости. Вы также можете использовать такой текст, как «имя пользователя в домене, точка com». Или это сейчас разбирают спамеры?

A. Rex 16.01.2009 06:10

@A. Рекс: Я видел в сети кучу регулярных выражений, которые могли понять многие их вариации.

alex 16.01.2009 06:43

Серьезно, стоит ли все эти попытки скрыть адреса электронной почты? Как только электронное письмо попадает в руки спамера, все кончено. Лучше вместо этого иметь хороший спам-фильтр.

И если вы используете JavaScript для обратного изменения адресов электронной почты, вы добавляете дополнительную работу браузеру при загрузке страницы. Если JavaScript отключен или пользователь использует мобильное устройство, которое не поддерживает JavaScript, они тоже облажались.

Я бы предположил, что перевернуть строку не должно быть слишком много на движке Javascript.

alex 16.01.2009 06:45

Почему бы вместо этого не использовать что-то вроде ПочтаСкрыть от разработчиков reCaptcha, чтобы скрыть адреса электронной почты?

Это хорошая идея ... к сожалению, клиенты, похоже, хотят чего-то особым образом.

alex 16.01.2009 06:44
Ответ принят как подходящий

Я лично считаю, что это перебор, но если вы действительно хотите скрыть адрес, почему бы не скрыть его в удобочитаемом виде? Вместо того, чтобы менять адрес на противоположное, сделать так, чтобы сервер выводил "информацию о местах утечки, точка com точка au" и получил javascript, чтобы исправить это?

Если вы хотите придерживаться метода RTL CSS, вы можете попробовать поиграть с символом Unicode, чтобы перевернуть текст: \ u202E Не уверен, что это поможет, но на него стоит взглянуть

Чтобы увидеть, как это работает, запустите этот javascript:

alert("one \u202E two \u202E three")

и он выведет "один или три"

Другие вопросы по теме