| « Поставить закладку » « Сделать стартовой » | |||
|
|||
|
Десять приемов CSS, о которых вы возможно не знали
By Trenton Moss, перевод tacit для www.realcoding.net 1. Сокращенные правила CSS для шрифтаОпределить стиль шрифта в CSS можно например так: font-size: 1em;
line-height: 1.5em;
font-weight: bold;
font-style: italic;
font-varient: small-caps;
font-family: verdana,serif
Однако в этом нет необходимости, поскольку можно использовать следующий сокращенный вариант : font: 1em/1.5em bold italic small-caps verdana,serif
Уже лучше. НО! Такая сокращенная форма записи будет работать только в том случае, если явно заданы 2. Два класса сразуКак правило, для тэга задается только один класс одновременно, однако это не значит, что нельзя задать больше. В действительности можно задать столько классов, сколько захочется, например: <p class="text side">...</p>
Использование этих двух классов вместе (разделенных пробелом, а не запятой) означает, что при верстке используются правила, заданные как в 3. Значение толщины рамки в CSS по умолчаниюПри написании правила CSS для рамки, как правило, устанавливаются цвет, ширина и стиль (не обязательно в таком порядке :). Например, Если бы вы просто задали: 4. Игнорируемое IE свойство !importantДля правил CSS характерно следующее поведение: сколько бы их не было, наивысший приоритет имеет последнее. Однако если использовать margin-top: 3.5em !important; margin-top: 2em
В этом случае отступ будет равен 3,5em для всех браузеров, кроме IE, для которого величина отступа будет равна 2em. (Остерегайтесь также элемента CSS child selector, содержание которого IE также игнорирует). 5. Методика замены нестандартных шрифтов изображениямиДля разметки с точки зрения скорости загрузки и преимуществ доступа (копирование и т.п.) предпочтительно использовать чистый текст, а не изображения. Однако если вы обязательно использовать именно какой-то определенный шрифт, который может быть не установлен у посетителя, то у вас нет выбора. Например, вам нужно, чтобы в заголовке каждой страницы была надпись "Купить виджет". А поскольку вы именно ими и торгуете, то вам нужно, чтобы эта фраза находилась поисковой машиной. И поскольку вы хотите использовать нестандартный шрифт, то вы вставляете изображение: <h1><img src="widget-image.gif" alt="Buy widgets" /></h1>
Решение само по себе нормальное, однако надо учесть, что поисковые машины не уделяют столько внимания альтернативному тексту для изобржений, сколько обычному тексту (потому что вебмастера имеют привычку писать в альтернативный текст всякую ерунду). Поэтому альтернативой будет такой способ: <h1><span>Buy widgets</span></h1>
Однако здесь уже не используется ваш нестандартный шрифт. Чтобы выйти из этой ситуации, поместите следующие команды в документ CSS: h1
{
background: url(widget-image.gif) no-repeat;
}
h1 span
{
position: absolute;
left:-2000px
}
Картинка с надписью нужным вам шрифтом будет отображена стандартным шрифтом, который будет безопасно расположен на расстоянии 2000 пикселей слева от документа и не будет виден. NB! в комментах yнашось хорошее альтернативное решение от Aaron Eldreth (TheCollective4.com, His Articles), основанное на использовании вместо
h1 span 6. Альтернатива box model hack в IEBox model hack используется для устранения проблемы в браузерах младше 6-ой версии IE, где рамка и набивка включены в ширину элемента, а не добавляются. Например, при задании размеров контейнера можно использовать следующее правило: #box
{
width: 100px;
border: 5px;
padding: 20px;
}
Правило CSS применяется тогда следующим образом: <div id="box">...</div>
Это обозначает, что полная ширина бокса равна 150 пикселей (100 пикселей непосредственно ширина + по 5 пикселей каждая рамка + по 20 пикселей набивка с обеих сторон) во всех браузерах, кроме младших 6-го IE. В этих браузерах полная ширина будет равна 100 пикселей, причем набивка и толщина рамки уже включены в ширину. Модель позволяет исправить такое поведение, но это не самый хороший способ. Простым решением будет использование следующей таблицы стилей: #box
{
width: 150px;
}
#box div {
border: 5px;
padding: 20px;
}
А новый код HTML будет тогда таким: <div id="box"><div>...</div></div>
Теперь ширина бокса всегда будет 150 пикселей, вне зависимости от браузера. 7. Выравнивание блочных элементов по центруНу вот захотелось вам, чтобы у вас был сайт с постоянной шириной, содержимое которого находилось бы посередине экрана. Это можно сделать например так: #content
{
width: 700px;
margin: 0 auto;
}
Затем каждый элемент заключается в body
{
text-align: center;
}
#content
{
text-align: left;
width: 700px;
margin: 0 auto;
}
Таким образом мы отцентрируем основное содержимое, однако и текст будет выравниваться по середине. Для изменения последнего мы задаем свойство 8. Вертикальное выравнивание с помощью CSSРеализовать вертикальное выравнивание в таблицах проще простого. Для того, чтобы выровнять содержание по середине (высоты ячейки), можно использовать конструкцию Хм, странное поведение... Вот решение. Установите высоту линии такой же, как и высота самого бокса в CSS. В частности, для нашего примера бокс высотой 2em, поэтому нужно вставить в правило CSS 9. Позиционирование внутри контейнераОдним из неоспоримых преимуществ CSS является то, что с их помощью мы можем поместить объект в любом месте документа. Также можно (а иногда и желательно) расположить объекты в контейнере. Это тоже делается просто. Просто создайте следующее правило CSS для контейнера: #container
{
position: relative
}
Теперь любой элемент, который находится в этом контейнере, будет располагаться относительно него. Допустим, у нас есть такой HTML-код: <div id="container"><div id="navigation">...</div></div>
Для того, чтобы поместить меню на расстоянии точно 30 пикселей слева и 5 сверху от границы контейнера, можно использовать следующее правило CSS: #navigation
{
position: absolute;
left: 30px;
top: 5px
}
В этом примере можно было также использовать правило 10. Распространяем фоновый цвет ячейки до нижнего края страницыОдним из недостатков таблиц стилей является невозможность контролировать положение по высоте, в отличие от табличной верстки. Допустим, вам нужно получить слева колонку с навигацией по сайту. И вы хотите, чтобы ее фон был голубым, в то время, как фон страницы белый. Для этого применятся простое правило: #navigation
{
background: blue;
width: 150px;
}
Но здесь есть одна загвоздка: так как высота меню меньше высоты экрана, то под ней внизу до конца экрана будет виден белый фон страницы. Это сильно портит дизайн страницы. И что нам с этим делать? К сожалению, единственным решением является обман - т.е. задание телу документа фоновой картинки того же цвета и той же ширины, что и наша колонка. Сделаем это так: body
{
background: url(blue-image.gif) 0 0 repeat-y;
}
Ширина картинки, которую вы зададите в качестве фоновой, должна быть ровно 150 пикселей, соответственно, и ее цвет должен быть тем же, что и фоновый цвет левой колонки. Недостатком такого способа является то, что вы не можете задать ширину колонки в em, т.е. невозможно сделать "резиновую" страницу. На момент написания статьи этот способ был единственным решением проблемы левой колонки. Будем надеяться, что CSS3 предоставит-таки кошерный способ ее решения. Рубрика: CSS
HTML 5: пять вещей вызывающих особый интер....
HTML 5 — это грядущее обновление гипертекстового языка разметки, основного способа создания контента для размещения его во всемирной паутине. Разработка HTML остановилась в 1999 году, на версии HTML 4.01 и с тех пор web-содержимое изменилось так, что текущие спецификации HTML перестали соответствовать сегодняшним требованиям. HTML 5 нацелен на то, чтобы увеличить функциональную совместимость HTML и соответствовать растущим требованиям разнообразного и смешанного web-контента. HTML 5 так же нацелен на устранение недостатков четвертой версии. В этой статье мы взглянем на 5 новых интересных вещей в HTML 5.
Подробнее... |
Рубрика: Html
| Добавлено: 22.12.2008
asp.net: ListView с разных сторон.
Элемент управления ListView был представлен в .Net Framework 3.5 как замена устаревшему GridView. Новый элемент имеет более расширенный функционал, чем его предшественник, но в тоже время лишен некоторых внутренних механизмов, что впрочем целиком следствие из расширенной универсальности ListView. Среди отличий ListView и GridView можно назвать и гибкую настройку разметки, что позволяет выводить данные не только в табличном виде, но и вообще в любом каком пожелает программист. Благодаря шаблонам ItemTemplate, EditItemTemplate, InsertItemTeplate можно настроить внешний вид при любом из состояний ListView: редактировании или выборе элемента.
Подробнее... |
Рубрика: .NET компоненты
| Добавлено: 22.12.2008
Создание кросс-таб отчета в Stimulsoft Rep....
Компания Стимулсофт предоставляет для разработчиков мощный набор инструментов для создания отчетов для Microsoft Visual Studio .Net 2005 и 2008; эти инструменты доступны как для Windows Forms, так и для Web Forms. Это генератор отчетов Stimulsoft Reports.Net. Генератор отчетов Stimulsoft Reports.Net имеет ряд особенностей: простая работа с дизайнером отчетов, полная поддержка экспорта в PDF, Word, Excel и многие другие форматы. Crystal Report и Microsoft Reporting Service – очень хорошие программные продукты для повседневной работы, но, если Вам необходимо создать отчеты с поддержкой кросс-табов, drill down, Ajax, штрих-кодов и возможностью подключения одновременно более одного источника данных, то Stimulsoft Reports.Net поможет Вам сэкономить массу времени. Также, данный генератор отчетов позволяет пользователям создавать свои собственные отчеты любой сложности. И все эти особенности делают Stimulsoft Reports.Net хорошим выбором в сфере программных продуктов для Business Intelligence.
Подробнее... |
Рубрика: .NET компоненты
| Добавлено: 22.12.2008
Остальные статьи: |
Цитата дня (все,добавить):
|
Realcoding.NET
© 2003-2008 |
Контакты |
Реклама на сайте
|