"Фичи" и "Баги" или Сделаем опыт общим!
Тема называется может немного и не очень понятно, но лишь потому что хотелось дать наиболее общее название.
Итак, все программисты, Дизайнеры и т.д. в свойе работе сталкиваются с различными мелочами, когда казалось бы "все правильно" но "работает не так". Или в одном браузере работает нормально, задокументировано что и в другом должно также - ан нет, он почему-то отображает иначе. Или в языке программирования, что-то не так работает в какой-то ситуации, как должно... Вобщем ситуации такие не редкость... Дак вот, предлагаю собирать здесь такие вот мелочи, база по которым сможет просто облегчить жизнь другим, столкнувшимися с подобными "неприятностями". :idontnow: :idontnow: Чтобы не распыляться на все подряд, ограничим тему следующим: [X]HTML, CSS, DOM, JavaScript, [VBScript], ну и возможно смежные с этим технологии Внимание: Этот топик посвящен НЕ различию браузеров! Не нужно писать типа - в ААА работает - в ББББ нет. Также огромная просьба, если не уверены в чем-то, или вопрос, лучше сначала спросить в отдельном топике. Сюда же лучше постить проблему в общем виде, тоесть в минимальном контексте примера (если он вообще нужен) чтобы была ясна ее суть. ========================================================== Ну и начну: Случайно выяснилось, что InternetExplorer 6.0 отображает стиль границы dotted точно также kak dashed (при толщине рамки в 1px, за уточнение спасибо Sheryld) ---------------------------------------------------------- RaZEr: IE 6.0: игнорирует padding при задании height (должно быть: padding+height) |
IE 6.0: игнорирует padding при задании height (должно быть: padding+height)
|
в PHP пишу:
$x--; Апач заходит в бесконечный цыкл. :( |
Цитата:
А во-вторых, прошу конкретизировать версию PHP, Апача и всего остального, чтобы наблюдать этот Баг. Вроде бы PHP нормально работает с операциями постинкремента/декремента. Проверил это утверждение на PHP 5.0.0. и Апач - 2.0.40 - проблемы нету!. Также ее нету на PHP 4.2.2 и томже апаче. |
rh.redora2/httpd 2.0.52/php5.0.3
rh.redora2/httpd 2.0.52/php5.0.3rc1 winxp.sp2/httpd 2.0.52/php5.0.3 так же не наблюдаю проблемы. |
Цитата:
попробуй этот код: Код:
<style> http://bugs.php.net/ p.p.s. decrement bugs, etc: http://bugs.php.net/search.php?searc...ail=&bug_age=0 |
Цитата:
Цитата:
Цитата:
|
Цитата:
Цитата:
И потом, не всегда это ошибки могут быть, и там ты не найдешь такого, скажем "странного" поведения, поскольку там только "баги", а "фичи" будут у нас эксклюзивны... :p |
Цитата:
|
2 Hubbitus: Может стоит определиь список технологий о которых будем говорить?
|
Internet Explorer отчего-то очень внимательно относится к переносам строк в html-коде. Конкретных примеров не могу привести, но часто это всякие сдвиги, ненужные строки высотой ~1px над картинками и т.д...
|
Цитата:
|
Цитата:
Кстати, с этим наверное многие сталкивались, но всеже: Хотя в стандарте определено что закрывающий тег </td> необязателен и в большинстве случаев все нормально без него, но если в ячейке присутствует только картинка, то IE, обрабатывает это не верно, и даже при прописывании жестко размеров ячейки, высота ее немного больше (расползается дизайн). |
Цитата:
|
Цитата:
А что насчет списка, того что хотим здесь иметь? Какие у всех есть предложения? |
Цитата:
Цитата:
|
imho кривое наследование
Не знаю, в тему ли это. Однако:
Есть HTML-страница с внешним файлом CSS. В CSS для BODY прописаны стили текста и стили гиперлинков. Так вот, если на странице есть таблица, то она получает стили только для гиперлинков, а для обычного текста - нет. Я бы считал логичным, что таблица лежит в пределах BODY и должна получать и стиль для текста тоже. Имел этот баг давно, и сейчас имею (или он меня) на XP Pro SP1 + IE6.0.x SP1 Решение простое есть - в CSS пишешь стили для таблицы. Но ПОЧЕМУ? |
Удвоение отступов
<div style="float: left; width: 200px; background:#ebebeb; margin-left: 100px;">Some text</div>
В ИЕ отступ слева для блока будет ровно в два раза больше указанного. Лечится добавлением display: inline в style. |
И ещё про css:float...
В ИЕ отодвигается содержимым блока. Т.е. если внутри блока содержащего блок с float есть другие блоки, то они могут сдвинуть блок с float. PS: Проверялось на IE 6.x |
Poison NULL byte в Perl -- вроде штука известная, но просматривая множество чужих скриптов я не встретил ни в одном из них механизма защиты от этого бага(хотя во многих из них она была очень нужна).
Perl считает \0 разделителем строки, поэтому если в строке типа: script.pl?html=one (допустим скрипт добавляет в конец one '.html') подставить вместо one script.pl и добавить после него %%0, то удастся просмотреть код скрипта, что не есть хорошо. Поэтому следует включить фильтр типа s/\\0//g; |
Скажите, люди добрые, ПОЖАЛУЙСТА, а почему у меня в Mozille все буквы "Я" в меню(меню сайта, не Мозиллы) кривые и не отображаются часы(явский скрипт) :contract: !Меню-тоже Javascript! :confused:
|
Цитата:
|
Цитата:
И это не работало. |
Цитата:
Какое было условие выхода из цикла? И этот код: $x = 5; $x--; был внутри цикла? |
Я сейчас уже точно не помню какой код там был. Помню что выводил что-то на экран.
Может быть $x-- было в цикле, может я писал echo $x--; В результате апач выводил в броузер бесконечное повторение моей строчки. Всё это было давно и неправда. :cool: |
Люди, извините если я не в тему! но у меня есть проблема с Perl овским скриптом, тоесть движком от чата, значит я хочу его запустить нажимаю на ссылку чтоб запустить его а там выдает мне ошибку такого содержание:
Prototype mismatch: sub main::ctime: none vs (;$) at /usr/local/lib/perl5/5.8.7/Exporter.pm line 65. at ./daemon.pl line 55 что мне надо делать? Это в Voodo chat! просто незнаю я в перл не шарю вот прошу у вас помощи...! За ранее благодарен! |
Iframe и Opera
такой пример есть две ячейки
<tr> <td></td> <td></td> </tr> в первой название меню, во второй подменю, .... <script language="JavaScript"> function showdiv(id, num) { document.getElementById(id).style.display = num ? "block" : "none"; } </script> .... <tr> <td onMouseOver="showdiv('1', 1)" onMouseOut="showdiv('1', 0)">название меню</td> <td> <div id="1"><iframe src=""></iframe></div> </td> </tr> Задача в том чтобы при наведении курсора на первый пункт меню, слева появлялось подменю... Везде работает, но опера не хочет работать: подвожу курсор, подменю появляется, но как только я хочу навести на него мышкой, оно сразу исчезает, хотя во всех других броузерах все нормально... Если убрать <iframe> то и в Opera все нормально работает, но без <iframe> нельзя, так как когда рядом с меню появляются элементы форм, или flash-анимация, то они накладываются на появляющийся слой - пробовал z-index не спасает... спасает только <iframe>... Как быть с Opera? |
он_Кофе ну если говорить о БАГе, то похоже на то в данном случае, только сформулировал бы я это так: При срабатывании события onMouseOver на объекте, если в обработчике этого события меняется этот объект (в данном случае размеры), то Опера (проверил на 8.53) почему-то, не смотря на то что указатель мыши остается над ним, генерирует для него событие сразу onMouseOut.
Ну а что касаемо Вашей проблемы, то лечится она элементарно несколькими способами, суть которых одна - не изменяйте объект, на котором срабатывают эти события в обработчиках, ну и как варианты навскидку (проверил): 1) div сделать не в этой таблице, а обсалютно позиционируемым 2) Сделать не див скрытый, а отдельную табличку скрывать рядом. |
Hubbitus,
Абсолютное позиционирование в моем случае не пожходит, так как время от времени на самом верху у меня появляется баннер... тогда придется под каждый банер менять абсолютное позиционирование... попробовал убрать div и скрывать табличку рядом... что-то не работает... проблема-то в том что Opera скрывает не div когда на него переходишь.... Я пробовал сделать div более широким и туда помещал справа IFRAME так вот когда курсор наводишь на пункт меню, появляется скрытый div - подменю... по мену перемещаешься.. все нормально... но как только курсор попадает на то что загружено в IFRAME то Opera сразу скрывает div (который содержит этот самый IFRAME) , но такая проблема только в Operaююю Как быть? |
Нашел прикольный скрипт:
Непослушные картинки Значит открыв любую страницу, желательно где мало картинок, в окне адреса напишим: Код:
javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24;x4=300; y4=200; x5=300; y5=200; DI=document.images; DIL=DI.length;function A(){for(i=0; i<DIL; i++){DIS=DI[ i ].style;DIS.position='absolute'; DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5;DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5}R++ }setInterval('A()',5); void(0); |
Часовой пояс GMT +4, время: 01:04. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.