Как сделать пустой тег привязки активируемым по щелчку в IE7?

Мы используем этот подход в нашей компании, но только для трудных задач или когда Вы не уверены в чем-то, кто-то еще уже продолжил работать, который я верю работам очень хорошо. Это сохраняет Вас застревающий в колеи и способности возвратить идеи от людей в случае необходимости в то время как все еще способность работать независимо на самые простые задачи.

я также полагаю, что это более выгодно, чем обзор кода, который является чем-то еще, что мы делаем, где я работаю. Часто трудно знать полностью, что продолжается при выполнении обзора кода, не обеспечивая значительный контекст, в которой точке у Вас не всегда есть время для размышления обо всем in's и out's. Парное программирование дает Вам, что контекст от запуска и позволяет Вам проводить больше времени, думая о пограничных случаях, которые могут или не могут вызвать проблемы.

16
задан deluxe_247 2 November 2009 в 21:44
поделиться

3 ответа

Избавьтесь от семантически бессмысленных тегов и используйте вместо них обычную замену изображений CSS.

<a href="#">foo</a>

А затем CSS:

a { 
    width:100px; 
    height:100px; 
    display:block; 
    text-indent:-9999px; 
    background:url(/img.png) no-repeat;
}

Добавьте любое позиционирование, которое вам нужно, и оно должно работать нормально.

19
ответ дан 30 November 2019 в 15:26
поделиться

Вместо этого сделайте DIV интерактивным. Если он вызывает JavaScript, вам вообще не нужен тег привязки.

При необходимости вы можете позиционировать его абсолютно.

<div onclick="alert('moo')" style="height;100px;width:100px;cursor:pointer"></div>
0
ответ дан 30 November 2019 в 15:26
поделиться

Вы обнаружили проблему с рендерингом с IE, и, согласно @Simon ниже, проблема все еще существует, по крайней мере, через IE9.

Ваш фон: взлом будет работать, но браузер будет каждый раз делать HTTP-запрос для разрешения фиктивного URL. Это может снизить производительность вашей страницы. Чтобы добиться того же результата, но не выполнять ненужный HTTP-запрос, я бы предложил вместо этого использовать этот URL-адрес:

background-image:url(about:blank);

about: blank - это специальный URL-адрес, который браузеры показывают как пустую страницу, поэтому он не повлияет на то, как элемент отображается, но он также не выполняет никаких HTTP-запросов.

Кстати, проблема возникает только тогда, когда у вас есть абсолютно или относительно позиционированный элемент A (или элемент A внутри позиционированного блока). Обычные непозиционированные гиперссылки, похоже, не имеют этой проблемы в IE7.

37
ответ дан 30 November 2019 в 15:26
поделиться