У меня есть форма, в форме две разные кнопки. Форма отправляет данные в скрипт, который что-то делает с данными в зависимости от того, что ему было отправлено. В Firefox всё работает как надо и как задумано, в Internet Explorer опять работает через жопу.
"If a form contains more than one submit button, only the activated submit button is successful."
То есть, работать должно. В Firefox работает, а вот Internet Explorer при нажатии на "Confirm" все равно отправляет "Change" как значение поля "order", что странно, ещё и с прописной буквы.
Даже если я поменяю имя первой кнопки на "confirm", то при нажатии на неё будет все равно отправлено содержимое значений обоих кнопок. Когда же они спецификации прочитают... Интересно, в IE7 пофиксили?
Сделал, наконец–то, задание по базам данных. Задание на двух листах — на первом описание данных, а на втором запросов к этим данным. Такое ощущение, что препод, писав второй лист, в первый не заглядывал вообще. В запросах вдруг появлялись данные, которых не было в описании. Постоянно что–то приходилось менять. Хотел проверить, совместимы–ли OpenOffice.org Base и Draw с форматами Access и Visio, но их почему–то у меня не нашлось. Надо будет как–нибудь поставить и попробовать.
Нарисовал в Visio таблицы, определил типы полей, внешние ключи и связи. Пытался найти способ сгенерировать из этого SQL–код. Где–то должена быть такая возможность генерации кода по нарисованной структуре базы данных, но я нашёл только средства обратного инжиниринга, но не прямого. Даже Prosa умеет, только вот её у меня нет, да и рисовать надо было в Visio. Хелп мне ни чем не помог, поискал в Гугле. Оказывается, Visio код генерировать не умеет вообще. Но есть способ XSLT -> XML -> SQL DDL при помощи сторонних утилит, но я из–за довольно небольшой базы заморачиваться не стал. Построил все таблицы вручную.
Firefox и Opera рендерят как надо, а Internet Explorer через жопу одно место. Интересно, Microsoft когда–нибудь обратит внимание на стандарты? Ладно, на Acid2 им наплевать, по их словам, у них есть вещи и поважнее, но самые простые баги исправить не такая уж и большая проблема.
Вот так рендерит Internet Explorer:
А вот как надо (Opera и Firefox):
А дело в том, что IE думает, что параметрами «width» и «height» задаётся размер всего бокса, хотя на самом деле, это размер контента внутри бокса, а ширина = width + padding-left + padding-right, если нет полей. Так же и высота = height + padding-top + padding-bottom.
The content edge surrounds the rectangle given by the width and height of the box, which often depend on the element's rendered content.