Реклама - здесь может быть Ваша реклама, которую увидят 4000+ человек в сутки. Хотите 1000 посетителей на свой сайт за 50 копеек?
Главная
Примеры PHP Примеры JavaScript Примеры Ajax Примеры CSS,HTML

Оформление гиперссылок, открывающих новое окно

На этот раз речь пойдёт об оформлении ссылок, имеющих атрибут target="_blank".

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

Прежде чем продолжать, хочу отметить, что я никогда не злоупотребляю открытием ссылок в новом окне браузера и вам не советую (см. также <Об открывании новых окон>). Но иногда это действительно необходимо.

Итак, ближе к телу. Самым первым приходящим на ум решением, как же нам выделять ссылки с атрибутом target="_blank", является введение отдельного CSS стиля:

a
  {
  text-decoration:underline
  }
a.blank
  {
  font-weight:bold
  }

В этом случае мы просто ручками применяем стиль blank к нужным гиперссылкам, от чего те приобретают полужирное начертание.

Но это решение не годится, поскольку предполагает ручную расстановку стилей. Поэтому рассмотрим вариант, основанный на CSS2 селекторах по атрибутам и псевдоэлементах:

a {
  text-decoration:underline
  }
a[target="_blank"]
  {
  font-weight:bold
  }
a[target="_blank"]:after
  {
  content:" (откроется в новом окне)";
  }

Сие означает, что все ссылки с атрибутом target="_blank" автоматически будут иметь полужирное начертание. Кроме того, после ссылки будет указан текст (откроется в новом окне). Плохо одно - это решение не работает в Internet Explorer любой версии. Работает на данный момент только в Opera 5+ и Netscape Navigator 6+/Mozilla.

Чтобы все ссылки с атрибутом target="_blank" автоматически имели полужирное начертание и в IE, нужно использовать конструкцию expression():

a{
  text-decoration:underline;
  expression((this.getAttribute("target") && this.getAttribute("target")=="_blank") ? "bold" : "normal")
  }

К сожалению, мы не ограничемся одной строкой JavaScript'а, если решим также эмулировать в IE CSS свойство content. Оставлю это в качестве домашнего задания тем, кому это нужно.


Автор: Шуркаев Александр Владимирович
Источник: Заметки HTML кодера
футбольная форма купить

© Copyright 2008-2012 by KDG