Jump to content

Абсолютное позиционирование в ячейках таблицы, в Firefox


psywalker
 Share

Recommended Posts

Несколько лет никто (и я в том числе) не мог найти решение надоедливой проблемы, касаемой абсолютного позиционирования в ячейках таблицы, в браузере Firefox. Но, так случилось, что рывшись долгое время в поисках этого решения я на него всё таки наткнулся, и спешу поделиться им с вами в этой статье. :)

Абсолютное позиционирование в ячейках таблицы, в Firefox

Отдельное спасибо Илюхе (SelenIT). Пока писалась статья, мы с ним узнали много нового и интересного :)

  • Like 1
Link to comment
Share on other sites

Скорее всего, разработчики Firefox считают, что таблица — это не место для контента, который вылазит за пределы ячеек (absolute).

Неверно. Контент может легко вылазить за пределы ячеек. Сами ячейки не являются объектом, который может вести себя как вырванный из потока элемент.

Link to comment
Share on other sites

Скорее всего, разработчики Firefox считают, что таблица — это не место для контента, который вылазит за пределы ячеек (absolute).

Неверно. Контент может легко вылазить за пределы ячеек. Сами ячейки не являются объектом, который может вести себя как вырванный из потока элемент.

Спасибо за замечание, Саш, исправлю :)

Link to comment
Share on other sites

Скорее всего, разработчики Firefox считают, что таблица — это не место для контента, который вылазит за пределы ячеек (absolute).

Неверно. Контент может легко вылазить за пределы ячеек. Сами ячейки не являются объектом, который может вести себя как вырванный из потока элемент.

Не ну я согласен, что position:absolute; для ячейки выглядит несколько абсурдно, но почему position:relative; не реализован хотя бы в какой-то ограниченной форме, скажем, чтоб top, left, right, bottom на него не действовали?

Link to comment
Share on other sites

Скорее всего, разработчики Firefox считают, что таблица — это не место для контента, который вылазит за пределы ячеек (absolute).

Неверно. Контент может легко вылазить за пределы ячеек. Сами ячейки не являются объектом, который может вести себя как вырванный из потока элемент.

Не ну я согласен, что position:absolute; для ячейки выглядит несколько абсурдно, но почему position:relative; не реализован хотя бы в какой-то ограниченной форме, скажем, чтоб top, left, right, bottom на него не действовали?

Почему же не реализован? Реализован, то только во всех браузерах, кроме Firefox. Почему, чуть выше Сорыч объяснил (и я в статье много про это сказал).

Но, самое прикольное то, что кто реально понимает, о чём речь в статье, будет приятно удивлён, когда обнаружит, что на самом-то деле проблема не в Firefox (решение для него в принципе найдено), а в IE9-10 (в 10 надеюсь поправят, но пока что хреново :facepalmxd: ), так как отчасти там есть (видимо) баги, которые не дают возможности полноценно пользоваться relative-ом в ячейках :) И вот эту-то проблему мне уже победить и не удалось к сожалению. Да что там я, даже могучему Илюхе оказалось не под силу. :(

Так что надеюсь на то, что кто нить сможет пнуть в нужную сторону :blush:

Подписался на блог.

:boast:

Link to comment
Share on other sites

Почему же не реализован? Реализован, то только во всех браузерах, кроме Firefox. Почему, чуть выше Сорыч объяснил (и я в статье много про это сказал).

Так я как раз про FireFox и говорю. Да и с Сорычем я согласен, просто вроде бы очевидна необходимость такой возможности, почему разробы не реализовали не понятно.

Link to comment
Share on other sites

Почему же не реализован? Реализован, то только во всех браузерах, кроме Firefox. Почему, чуть выше Сорыч объяснил (и я в статье много про это сказал).

Так я как раз про FireFox и говорю. Да и с Сорычем я согласен, просто вроде бы очевидна необходимость такой возможности, почему разробы не реализовали не понятно.

Да потому что Firefox слишком ответственно подходят к спецификации, делают всё качественно, а тут на этот счёт в спеке некая неопределённость, в которой реализация отдаётся на откуп разрабам. И Firefox решили, что таблица с потомками - это не место для позиционирования... и т.д... Но, вообще-то, могли бы и не упрямица, гады)

Link to comment
Share on other sites

Но, вообще-то, могли бы и не упрямица, гады)

Вот именно

Кстати, где-то в багрепортах вроде (кажись чё-та Илюха говорил) уже есть жалобы на эту "неприятность" в Firefox. Но, что-то они не чешутся по этой проблеме(

Link to comment
Share on other sites

Не ну я согласен, что position:absolute; для ячейки выглядит несколько абсурдно, но почему position:relative; не реализован хотя бы в какой-то ограниченной форме, скажем, чтоб top, left, right, bottom на него не действовали?

Вы можете попасть в несколько странную ситуацию. Например, как должны выглядеть бордюры ячейки при border-collapse: collapse, когда ваша ячейка находится за пределами таблицы, а последующая ячейка имеет отличные стили бордера?

Link to comment
Share on other sites

Не ну я согласен, что position:absolute; для ячейки выглядит несколько абсурдно, но почему position:relative; не реализован хотя бы в какой-то ограниченной форме, скажем, чтоб top, left, right, bottom на него не действовали?

Вы можете попасть в несколько странную ситуацию. Например, как должны выглядеть бордюры ячейки при border-collapse: collapse, когда ваша ячейка находится за пределами таблицы, а последующая ячейка имеет отличные стили бордера?

Я полагаю, что кому-то просто бордюров не хватит. Но ячейка не должна оказываться за пределами таблицы, на то она и ячейка таблицы.

Link to comment
Share on other sites

Не ну я согласен, что position:absolute; для ячейки выглядит несколько абсурдно, но почему position:relative; не реализован хотя бы в какой-то ограниченной форме, скажем, чтоб top, left, right, bottom на него не действовали?

Вы можете попасть в несколько странную ситуацию. Например, как должны выглядеть бордюры ячейки при border-collapse: collapse, когда ваша ячейка находится за пределами таблицы, а последующая ячейка имеет отличные стили бордера?

Согласен, но почему бы не убрать именно то, что было бы действительно странно (типа ячеек за таблицами), и реализовать полезное (типа позиционирования в самих ячейках)?

Другие браузеры-то организовали, а ФФ нет(

Link to comment
Share on other sites

  • 3 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy