Часть полного текста документа:Памятка по CSS Dave Shea При верстке сайта с помощью CSS вы обязательно наткнетесь на множество проблем. И всякий раз вы будете биться головой об стену в попытках обойти очередной глюк. Данный документ призван облегчить вам процесс разработки, и служит кратким справочником, к которому вы можете обращаться всякий раз, когда столкнетесь с непреодолимым препятствием. Если у вас есть что добавить к этому документу, оставьте свой комментарий здесь. Данный документ переведен на французский, немецкий, испанский, итальянский, венгерский, финский, русский, японский и китайский языки. Что-то не так? Проверьте код валидатором! При отладке своего кода вы сэкономите уйму времени и нервов, если в первую очередь проверите его валидатором. Чаще всего проблемы с компоновкой страницы вызваны неверным XHTML или CSS. Создавайте и тестируйте свой CSS-код сначала в современных "продвинутых" браузерах, и лишь затем - в остальных, но не наоборот Если вы тестируете сайт в некачественном браузере, ваш код начинает зависеть от неправильного отображения этим браузером. Когда настанет время проверить сайт в браузерах, верно поддерживающих стандарты, вы наверняка огорчитесь увиденным. Таким образом, начните с передовых браузеров, а потом добавляйте к коду трюки для менее удачных. Таким образом ваш код с самого начала будет соответствовать стандартам, и вам не придётся слишком много "колдовать" для поддержки других браузеров. Сегодня самыми передовыми браузерами являются Mozilla, Safari, или Opera. Удостоверьтесь, что желаемый эффект действительно существует. Существуют расширения CSS, специфичные для конкретных браузеров, но не входящие в официальную спецификацию каскадных таблиц. Если вы пытаетесь применить свойство filter или отформатировать внешний вид полосы прокрутки, знайте - вы используете специфичный код, работающий только в IE. Если валидатор вдруг пишет вам, что ваш код не соответствует спецификации, скорей всего это из-за того, что в нем присутствует такое специфические расширение, и оно не будет работать в других браузерах. Применяя плавающие блоки, убедитесь в том, что они не мешают соседям "Плавающие блоки" коварны, и они не всегда ведут себя так, как ожидается. Если вдруг получилось так, что плавающий блок вылезает за пределы содержащего его элемента, или же он ведет себя не так, как вы хотите - удостоверьтесь в корректности того, чего вы хотите добиться. Обратитесь за подробностями к руководству Эрика Мейера. Поля (margins) всегда "сворачиваются". Пользуйтесь вместо них отступами (padding) или границами Если у вас вдруг появляется пустое пространство там, где оно вам не нужно, или наоборот - нету свободного пространства там, где оно вам нужно, это скорей всего происходит из-за полей (margins), которые имеют привычку "сворачиваться". Andy Budd в своей статье описывает этот глюк и дает советы, как его избежать. Старайтесь не задавать элементу одновременно отступ/границу И фиксированную ширину IE5 неправильно реализует блочную модель CSS, из-за чего ваша страница может превратиться в кашу. Существует несколько уловок обойти этот глюк, но лучше всего вообще с ним не связываться: задавайте нужный отступ в родительском элементе, а фиксированную ширину - в дочернем. ............ |