Как разместить текст поверх DIV, не нарушая область парения этого DIV? - PullRequest
1 голос
/ 19 марта 2011

Я полный нуб с CSS, и это похоже на ад = /

У меня абсолютное позиционирование DIV, и я обрабатываю события мыши над этим DIV с помощью JS следующим образом:

    <div style='position: absolute; left: 0px; width:50px; height: 50px;'
      onmouseover='this.style.border="2px solid red"' 
      onmouseout='this.style.border="1px solid black"'>
    </div>
    <div style='position: absolute;'>SOME TEXT</div>

Мне нужно поместить некоторый текст поверх этого DIV и нескольких одинаковых DIV, но если я помещу какой-либо элемент поверх этого DIV, событие onMouseOut срабатывает, когда курсор мыши переключается на текст.Тег с текстом не может быть внутри DIV.Игра с z-index не помогла.Мой браузер IE8.

ОБНОВЛЕНИЕ: Я не могу поместить текст в div, потому что текст должен выходить за пределы DIV.Другими словами, я хочу обрабатывать события мыши над произвольной областью в любом тексте.Я могу сделать это, если я установил backgroundColor для DIV, но мне нужно обрабатывать события прозрачной области.

Ответы [ 2 ]

1 голос
/ 19 марта 2011

пробовал {cursor: pointer} по тексту div?

1 голос
/ 19 марта 2011

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

С другой стороны, еслиВы хотите погрузиться в некоторые сценарии, вот базовый алгоритм того, как вы можете справиться с этим:

  1. Настройка функции для запуска при наведении курсора на триггеры div.Эта функция покажет div "SOME TEXT", если его отображение установлено на "none".
  2. Установите функцию, которая будет срабатывать при наведении курсора на div-ы триггера.Эта функция будет немного сложнее.Сначала вы должны проверить, что такое event.currentTarget;если event.currentTarget является div "SOME TEXT", вернуть false.Если это что-то еще, то вы устанавливаете отображение «НЕКОТОРЫЙ ТЕКСТ» на «нет».

Это может быть немного выше, чем у вас с CSS и JS, но это почти единственный способчтобы сделать это, так как только CSS не будет делать то, что вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...