Глюки при задании border ненулевой толщины в CSS
|
NAV 07/31/04 06:24 PM |
|
Задаю для элемента button стиль, где указываю
border: 1px solid #000000;
В результате когда щелкаю на соответствующую кнопку, то ниже и правее возникает "призрак": появляется мусорный контур этой кнопки... Подскажите, в чем дело! Подобная проблема наблюдалась и на более старых версиях Opera - 7.23, к примеру...
|
Re: Глюки при задании border ненулевой толщины в CSS
|
Mongoose 07/31/04 07:02 PM |
|
Реальный пример в студию.
|
Re: Глюки при задании border ненулевой толщины в CSS
|
NAV 08/02/04 10:31 AM |
|
Весь пример выслать проблематично - коммерческий проект. 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, который ей соответствует и спрятать ранее открытый другой кнопкой.
|
Re: Глюки при задании border ненулевой толщины в CSS
|
Mongoose 08/02/04 10:48 AM |
|
Подозреваю, что виновато
<td width="100"><input type="button" name="btnPP" id="btnPP" value="Preprocessing" width="100"
Ширина кнопки и ячейки, в которую кнопка загнана, одинаковы, т.е. бордеры накладываются. А если при onClick ещё какой-нить эффект нажатия (смещение, тень и т.д.) используется, то думаю, что проблема именно здесь.
В ответ на: Весь пример выслать проблематично - коммерческий проект.
Достаточно было бы УРЛа на страницу с глюком.
|
Re: Глюки при задании border ненулевой толщины в CSS
|
NAV 08/02/04 01:04 PM |
|
Я бы дал ссылку, но все запаролено - говорю же, что коммерческий проект Однако по сути: пробовал и размеры ячейки изменять, и убирать код из clickStage. Только когда в этой функции вообще кода не остается (или если ставлю alert) - работает. А когда там хоть что-то находится, даже самые безобидные строчки из моей функции - мусор на экране.
|
Re: Глюки при задании border ненулевой толщины в CSS
|
Mongoose 08/02/04 01:27 PM |
|
А что делает вот это? obj.blur();
|
Re: Глюки при задании border ненулевой толщины в CSS
|
NAV 08/02/04 02:08 PM |
|
Убирало рамку фокуса вокруг активной кнопки. Сейчас, кстати, рамка и так не появляется почему-то...
Но все равно эта строчка положение не меняет... :-\
|
Re: Глюки при задании border ненулевой толщины в CSS
|
Mongoose 08/02/04 02:45 PM |
|
Без нормального примера, сам понимаешь, ничего пределённого сказать не могу. Попробуй для посмотреть вынести кнопку из таблицы.
|
Re: Глюки при задании border ненулевой толщины в CSS
|
NAV 08/29/04 06:11 PM |
|
Привет. Совсем заработался, лишь теперь показываю пример _//www.sunbay.kiev.ua/~nav/GEA/_
Закачал, но что-то у меня не DNS-ится ссылка... Может, временные проблемы на сервере. Если не будет грузиться - скажи, можно и архивчик выслать - он совсем небольшой получится, около 12 кб
|
Re: Глюки при задании border ненулевой толщины в CSS
|
Mongoose 08/29/04 06:46 PM |
|
Проверил на Opera 7.60p1 Всё в порядке, сколько ни клацал.
p.s. Смотрится продвинуто и симпатишно
|
Re: Глюки при задании border ненулевой толщины в CSS
|
Angolier 08/30/04 12:24 PM |
|
Мангуст... на 7.54... глюк есть... причем если ткнуть в "MV-CIustering" постороней рамки не возникает... Вот.
|
Re: Глюки при задании border ненулевой толщины в CSS
|
NAV 10/05/04 09:31 PM |
|
Ну что, друзья-товарищи? Никто мне не подскажет, воцап?
|