Nojs, only CSS!

Да да, No JS

Сейчас поведаю про интересный способ защиты имейлов от спамеров используя только CSS.

И так, сначала ревертим наш имейл, можем это сделать на JS:

'major@geekjob.ru'.split('').reverse().join('')
// ur.bojkeeg@rojam

Далее этот имейл вставляем в HTML:

<span class="antibot">ur.bojkeeg@rojam</span>

Далее пишем такой CSS:

<style>
.antibot {
unicode-bidi: bidi-override;
direction: rtl;
}
</style>

Результат: люди видят нормальный перевернутый перевернутого имейл.

Antibot protection on pure CSS

Как это работает

В европейских языках чтение текста происходит слева направо, в то время как есть языки, где текст читается справа налево. При смешении в одном документе разных по написанию символов (русского с ивритом, к примеру) в системе юникод, их направление определяется браузером из характеристик и содержимого текста. Свойства unicode-bidi и direction задают, как должен располагаться текст используемого языка.

Собственно вот и все. Правда такой механизм неудобен для людей, так как скопировать такой адрес не получается нормально 🙁