![]() |
|
Модераторы: Illuminaty |
![]()
|
|
| Alexis |
|
||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 14.8.2006 Где: Казань Репутация: нет Всего: 5 |
Наверное вопрос уже не раз обсуждался, но я, к сожалению, не нашел на него ответ.
Мне необходимо сделать класс, принадлежащие которому элементы будут иметь бордюр с закругленными краями, толщина бордюра 1px, радиус закругления углов 10px. Поскольку использование JS крайне нежелательно, то было принято решения реализовать закругленные края с помощью картинок. Дабы не плодить всякие неочевидные хитрости вроде один уголок относится к div'у, другой к заголовку, третий к абзацу и т. п. пошел по самому что ни на есть простому и верному пути, а именно на странице создал конструкции вроде:
Соответственно, в CSS прописал следующие стили:
FF понял меня верно и позиционировали картинки с уголками относительно div.box, на том я и успокоился. Когда все было сверстано решил таки проверить в Opera -- все отлично. И вот, запустил IE Первое чем он меня удивил так это то, что некоторые бордюры находились внутри элемента, а некоторые снаружи. Ладно, написал отдельную CSS для IE с другими отступами:
Теперь картинки позиционировались верно. Но радоваться было еще рано. Оказалось, что все будет красиво если только это самый div.box будет на странице один. Если даже просто вставить на страницу их две штуки, то нижние уголки уедут далеко. Если вставить div.box в ячейку таблицы, то уголки разнесутся по углам ячейки, т. е. будут позиционироваться абсолютно, но не относительно свои родителя div.box, а почему-то относительно ячейки. Даже не знаю, что теперь делать. Насколько я понимаю, по идее элементы с абсолютным позиционированием относительно родителя (у div.box стиль position: relative), но, может быть, я что-то неверно понимаю? |
||||||
|
|||||||
| japanes |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 176 Регистрация: 20.1.2007 Репутация: 7 Всего: 7 |
рабочий пример:
если уголки уедут вниз измени стиль для div.round_block на:
Это сообщение отредактировал(а) japanes - 1.8.2007, 17:22 |
||||
|
|||||
| Alexis |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 133 Регистрация: 14.8.2006 Где: Казань Репутация: нет Всего: 5 |
japanes, спасибо!
Посмотрел ваш пример. Заметил, что вы установили ширину div.round_block, тоже установил для своих боксов ширину (поставил 100%, все равно они еще в один div закидываются и должны тянуться на полную ширину родителя и в дизайне ничего не изменилось) и усе заработало. У меня бордюр с закругленными углами. Если просто закругленные углы и картинка с углам не доходит 1px до края, то для просто фона с закругленными углами ничего страшного, а для бордюра это просто смертельно. Вот у меня нижние углы иногда встают нормально, а иногда не доходят один пиксель до края -- зависит от содержимого (опять появляется это только в IE). Тогда вставил ваши две последние строчки, немного изменив (заменил "-1" на "-2", а "-0" на "-1"):
Так же поставил всем элементам расстояния от углов в -1px (у вас они нулевые). И все заработало! И CSS одна на все браузеры Поставил бы вам плюс, да не дорос еще. Может быть кто-нибудь из модераторов поставит? |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Вёрстка веб-сайтов | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |