Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.10.2009, 18:41
Новичок на форуме
Отправить личное сообщение для kampil Посмотреть профиль Найти все сообщения от kampil
 
Регистрация: 25.10.2009
Сообщений: 6

Всплывающая подсказка над полем
Есть такой вопрос: а как возможно сделать всплывающую подсказку над полем ввода(текстовым) на css,когда наступает событие onFocus ну т.е. типо такого,только чтобы это подсказка не раздвигала другие элементы когда делаешь display:block :
<style>
   .class1{
     display:none;
	 position:relative;
   }
   .class2{
    position:relative;
	display:block;
   }



     <div class="class1" id="tips">Это подсказка для поля</div>
     <input id="myfield" onFocus="document.all['tips'].className='class2';" type="text" />

вопрос глупый , понимаю, но всё же хочется услышать ответ...
Ответить с цитированием
  #2 (permalink)  
Старый 25.10.2009, 21:17
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от kampil
чтобы это подсказка не раздвигала другие элементы когда делаешь display:block
Добавь position:absolute ему, ну и всё из этого вытекающее
Ответить с цитированием
  #3 (permalink)  
Старый 25.10.2009, 21:49
Новичок на форуме
Отправить личное сообщение для kampil Посмотреть профиль Найти все сообщения от kampil
 
Регистрация: 25.10.2009
Сообщений: 6

Сообщение от B~Vladi Посмотреть сообщение
Добавь position:absolute ему, ну и всё из этого вытекающее
ну это канешь понятно что position: absolute, но абсолютное позиционирование идёт относительно ближайшего абсолютно позиционированного элемента, т.е. вот если нужно именно "над" input полем вывести, т.е. как бы не понятно тогда, тупо прибавлять там везде координаты типо там top: left: это не выход, на jQuery же можно сделать чтобы было там над или под элементом, но вот именно как это сделать на javascript или css не важно, вот что интересует
Ответить с цитированием
  #4 (permalink)  
Старый 25.10.2009, 22:10
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

<div style="position: relative;"><input onfocus="this.nextSibling.style.display = 'block';" /><div style="padding: 0 10px; background: #f99; display: none; position: absolute; left: 170px; top: 0;">text</div></div>
Ответить с цитированием
  #5 (permalink)  
Старый 25.10.2009, 22:18
Новичок на форуме
Отправить личное сообщение для kampil Посмотреть профиль Найти все сообщения от kampil
 
Регистрация: 25.10.2009
Сообщений: 6

Не ну так это опять же понятно всё...ну я кажется понял ваще как это сделать т.е. это только через javascript возможно канешь, т.е. нам нужны координаты скажем самого input элемента узнаем ты их наверное через offsetLeft или offsetTop вот , ну не буду сейчас пробовать, меня интересовало вот именно ход решения этой задачи, т.к. один раз не смог сделать, забил, сделав по простому тоже, но просто интерестно понять как это сделать, просто можно пользоваться понятное дело что фраемворками, но не понимая как это сделать юез них , это не есть гуд
Ответить с цитированием
  #6 (permalink)  
Старый 25.10.2009, 22:54
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от kampil
т.е. это только через javascript возможно канешь, т.е. нам нужны координаты скажем самого input элемента узнаем ты их наверное через offsetLeft или offsetTop
Тебе Riim привёл пример кода, в котором не надо вычислять никаких координатов. Поиграйся с ним.
Ответить с цитированием
  #7 (permalink)  
Старый 25.10.2009, 22:59
Новичок на форуме
Отправить личное сообщение для kampil Посмотреть профиль Найти все сообщения от kampil
 
Регистрация: 25.10.2009
Сообщений: 6

не, я уже протестил, через offsetLeft и offsetTop сделать можно, я не знаю, как насчёт работоспособности во всех браузерах, но с чистым css и DOM это не сделаешь, а rim привел код , но это же не куда не годится правильно: position: absolute; left: 170px имеется в виду left: 170px я ж не буду каждый раз подгонять, нужно же универсальное решение
Ответить с цитированием
  #8 (permalink)  
Старый 25.10.2009, 23:05
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,021

Сообщение от kampil
через offsetLeft и offsetTop сделать можно, я не знаю, как насчёт работоспособности во всех браузерах
Да, так можно и кроссбраузерно.
Сообщение от kampil
но с чистым css и DOM это не сделаешь
Сделаешь
Сообщение от kampil
я ж не буду каждый раз подгонять, нужно же универсальное решение
Тебе и не надо подгонять! У тебя каждая подсказка будет на 170px правее поля... Обрати внимание на position: relative; - о чём это говорнит?! О том, что координаты абсолютного дива будут расчитываться от его родителя, а не от body.
Ответить с цитированием
  #9 (permalink)  
Старый 25.10.2009, 23:16
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Сообщение от kampil
я ж не буду каждый раз подгонять, нужно же универсальное решение
вместо left можно right написать. Еще можно с float вместо position:absolute попробовать.
Ответить с цитированием
  #10 (permalink)  
Старый 25.10.2009, 23:16
Новичок на форуме
Отправить личное сообщение для kampil Посмотреть профиль Найти все сообщения от kampil
 
Регистрация: 25.10.2009
Сообщений: 6

Ну чтож, я согласен) мда, надо бы получше мне выучить всё, что относится к позиционированию..
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мышка над фреймом peter888 Элементы интерфейса 11 14.08.2009 18:09
всплывающая java script подсказка ehevnlem Элементы интерфейса 2 16.12.2008 16:57
Всплывающая подсказка Kaito Общие вопросы Javascript 1 16.09.2008 17:28
Всплывающая подсказка SunYang Элементы интерфейса 14 12.06.2008 13:19