NAV
|
Новичок
|
|
|
Зарегистр: 31/07/2004
|
Сообщений: 7
|
|
|
Глюки при задании border ненулевой толщины в CSS
31/07/2004 18:24
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Задаю для элемента button стиль, где указываю
border: 1px solid #000000;
В результате когда щелкаю на соответствующую кнопку, то ниже и правее возникает "призрак": появляется мусорный контур этой кнопки... Подскажите, в чем дело! Подобная проблема наблюдалась и на более старых версиях Opera - 7.23, к примеру...
|
Mongoose
|
Moderator
|
|
|
Зарегистр: 21/05/2003
|
Сообщений: 1754
|
Из: Київ, Ненька Україна
|
|
Re: Глюки при задании border ненулевой толщины в CSS
31/07/2004 19:02
[Re: NAV]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Реальный пример в студию.
|
NAV
|
Новичок
|
|
|
Зарегистр: 31/07/2004
|
Сообщений: 7
|
|
|
Re: Глюки при задании border ненулевой толщины в CSS
02/08/2004 10:31
[Re: Mongoose]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Весь пример выслать проблематично - коммерческий проект. PHP-код. Но подозреваю, что все каким-то образом связано с функцией, навешенной на событие click (странно, потому что в других броузерах никаких "призраков" не возникает). Вот она
function clickStage(obj) { document.getElementById('indication').style.display = ''; if (activeStageObj != null) { //если уже была нажата какая-то кнопка - изменить ее стиль на стиль "ненажатой кнопки" activeStageObj.style.backgroundColor = '#DDDDDD'; activeStageObj.style.color = '#000000'; activeStageObj.disabled = false; document.getElementById('menu' + activeStageObj.name.substr(3)).style.display = 'none'; //скрыть DIV, который был открыт ранее нажатой кнопкой if (activeMenuObj != null) document.getElementById(activeMenuObj.name + 'menu').style.display = 'none'; } //скрыть менюшку, связанную с ранее нажатой кнопкой document.getElementById('chooseStage').className = 'nonactiveheader'; document.getElementById('followSteps').className = 'activeheader'; //а теперь - подсветить текушую кнопку obj.style.backgroundColor='#800040'; obj.style.color = '#FFFFFF'; obj.disabled = true; document.getElementById('menu' + obj.name.substr(3)).style.display = ''; //отобразить соответствующий ей DIV document.title = 'GEA : ' + obj.value; obj.style.cursor = 'default'; obj.blur(); activeStageObj = obj; if (activeMenuObj != null) { activeMenuObj.style.backgroundColor = '#DDE6F4'; activeMenuObj.style.color = '#000000'; activeMenuObj = null; if (whatToHide != '') { document.getElementById(whatToHide).style.display = 'none'; whatToHide = ''; } } }
Вызов ее такой:
<td width="100"><input type="button" name="btnPP" id="btnPP" value="Preprocessing" width="100" height="50" class="stagebutton" onClick="clickStage(this)" onMouseOver="maybeChangeCursor(this)" onMouseOut="stageHighlightOff()"></td>
Смысл кнопки - отобразить скрытый DIV, который ей соответствует и спрятать ранее открытый другой кнопкой.
|
Mongoose
|
Moderator
|
|
|
Зарегистр: 21/05/2003
|
Сообщений: 1754
|
Из: Київ, Ненька Україна
|
|
Re: Глюки при задании border ненулевой толщины в CSS
02/08/2004 10:48
[Re: NAV]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Подозреваю, что виновато
<td width="100"><input type="button" name="btnPP" id="btnPP" value="Preprocessing" width="100"
Ширина кнопки и ячейки, в которую кнопка загнана, одинаковы, т.е. бордеры накладываются. А если при onClick ещё какой-нить эффект нажатия (смещение, тень и т.д.) используется, то думаю, что проблема именно здесь.
В ответ на: Весь пример выслать проблематично - коммерческий проект.
Достаточно было бы УРЛа на страницу с глюком.
|
NAV
|
Новичок
|
|
|
Зарегистр: 31/07/2004
|
Сообщений: 7
|
|
|
Re: Глюки при задании border ненулевой толщины в CSS
02/08/2004 13:04
[Re: Mongoose]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Я бы дал ссылку, но все запаролено - говорю же, что коммерческий проект Однако по сути: пробовал и размеры ячейки изменять, и убирать код из clickStage. Только когда в этой функции вообще кода не остается (или если ставлю alert) - работает. А когда там хоть что-то находится, даже самые безобидные строчки из моей функции - мусор на экране.
|
Mongoose
|
Moderator
|
|
|
Зарегистр: 21/05/2003
|
Сообщений: 1754
|
Из: Київ, Ненька Україна
|
|
Re: Глюки при задании border ненулевой толщины в CSS
02/08/2004 13:27
[Re: NAV]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
А что делает вот это? obj.blur();
|
NAV
|
Новичок
|
|
|
Зарегистр: 31/07/2004
|
Сообщений: 7
|
|
|
Re: Глюки при задании border ненулевой толщины в CSS
02/08/2004 14:08
[Re: Mongoose]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Убирало рамку фокуса вокруг активной кнопки. Сейчас, кстати, рамка и так не появляется почему-то...
Но все равно эта строчка положение не меняет... :-\
|
Mongoose
|
Moderator
|
|
|
Зарегистр: 21/05/2003
|
Сообщений: 1754
|
Из: Київ, Ненька Україна
|
|
Re: Глюки при задании border ненулевой толщины в CSS
02/08/2004 14:45
[Re: NAV]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Без нормального примера, сам понимаешь, ничего пределённого сказать не могу. Попробуй для посмотреть вынести кнопку из таблицы.
|
NAV
|
Новичок
|
|
|
Зарегистр: 31/07/2004
|
Сообщений: 7
|
|
|
Re: Глюки при задании border ненулевой толщины в CSS
29/08/2004 18:11
[Re: Mongoose]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Привет. Совсем заработался, лишь теперь показываю пример http://www.sunbay.ki.../~nav/GEA/
Закачал, но что-то у меня не DNS-ится ссылка... Может, временные проблемы на сервере. Если не будет грузиться - скажи, можно и архивчик выслать - он совсем небольшой получится, около 12 кб
|
Mongoose
|
Moderator
|
|
|
Зарегистр: 21/05/2003
|
Сообщений: 1754
|
Из: Київ, Ненька Україна
|
|
Re: Глюки при задании border ненулевой толщины в CSS
29/08/2004 18:46
[Re: NAV]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Проверил на Opera 7.60p1 Всё в порядке, сколько ни клацал.
p.s. Смотрится продвинуто и симпатишно
|
Angolier
|
Operaman
|
|
|
Зарегистр: 19/02/2003
|
Сообщений: 1446
|
Из: Россия _ Химки
|
|
Re: Глюки при задании border ненулевой толщины в CSS
30/08/2004 12:24
[Re: Mongoose]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Мангуст... на 7.54... глюк есть... причем если ткнуть в "MV-CIustering" постороней рамки не возникает... Вот.
|
NAV
|
Новичок
|
|
|
Зарегистр: 31/07/2004
|
Сообщений: 7
|
|
|
Re: Глюки при задании border ненулевой толщины в CSS
05/10/2004 21:31
[Re: Angolier]
[post link]
|
Напомнить
Правка
|
Сообщить
Ответ
|
|
|
Ну что, друзья-товарищи? Никто мне не подскажет, воцап?
|