2011 7 июля 2011

Вопрос о CSS хак

Если бы прочитать это в некотором блоге ... думал, что это было приятно это каталог для будущей работы .... также может быть важным вопросом интервью, что вы бы спросили в один прекрасный день ....

Напишите фрагмент CSS, который будет отображаться пункт в синем в старых браузерах, красный в новых браузерах, зеленый в IE6 и IE7 в черном

#content p{color:blue}
html>body #content p {color:red}
* html #content p{color:green}
html>body #content p {*color:black;}


2010 20 мая 2010

Re-Велоспорт CSS: Look At рамки CSS

Re-Велоспорт Buzzword и в веб-разработке, это означает не отличается. Это экономит энергию, с точки зрения усилий!

За годы написания CSS и HTML с созданием дизайна, я следовал несколько передового опыта, в погоне за экономию времени и энергии на то, что мы обычно термин, как "Re изобретать колесо". Снова и снова, я сказал себе, что я должен создать несколько шаблонов, некоторые стандартные повторного использования CSS, что я буду использовать OUT OF THE BOX в моей будущей работе. Хотя и не полностью, но мне удалось достичь некоторых целей.

В дальнейшем, повторное использование CSS, я посмотрел на несколько рамок CSS, которые обычно доступны для нас, и решил положить их использовать, так как они испытанный и созданные много опытных разработчиков, чем я сам. Что еще более важно "избежать повторного изобретения".

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

Ключи Re-круговорот CSS:

Используйте соглашения об именовании

Это должно быть самым важным фактором в создании CSS / HTML повторного использования. Предоставление соответствуют имена элементов страницы позволяет повторное использование компонентов страницы и их стили с небольшим или модификации. В соответствии с этим аргументом, даже HTML5, к значительному изменению изменения сравнению с его предшественниками, является введение некоторых структурных именно теги. <article>, <section>, <header>, <aside> и <nav> [ Что HTML5 с собой? ]. Даже с HTML 4 (или ниже), то лучше всего назвать стандартные разделы страницы consistanly как в простом примере ...

Помните, что большинство страниц вашего проекта, в конечном итоге с той же основных структурных элементов. Определить эти общие элементы страниц основного ....

  <div id="container">
    <div id="header"> ... </ div>
    <div id="nav"> ... </ div>
    <div id="sidebar"> ... </ div>
    <div id="footer"> ... </ div>
   </ Div> 

Сброс по умолчанию стилей (CSS Сброс): Используете ли вы структуру или написать свой ​​собственный, вы должны предоставить CSS сброс [ Что такое CSS сброс? ], так как они снижают, а иногда и устранения визуальных несоответствий, которые возникают между различными браузерами. Говоря простыми словами механизм CSS Reset устанавливает стили HTML элемента к нулю или нулевой ценности, таким образом переопределить любой браузер по умолчанию значения они могут позах. Это позволяет с чистого листа, чтобы установить свойства этих элементов лишено всякой User-Agent по умолчанию [ CSS 2.1 User Agent по умолчанию стилей ]. Все CSS рамки действительно есть механизм сброса. Если Вы пишете вы владеете CSS сброс, слово предостережения, что если вы случайно забыли сбросить ключевое свойство, это может привести к кросс-браузерные проблемы, которые очень трудно отлаживать. Помните, что Сохраните копию сброса стилей и поместите их в каждый новый проект, который вы создаете.

  тело, дел, дл, DT, DD, ул, ол, Ли,
  h1, h2, h3, h4, h5, h6,
  предварительно, форма, набор полей, ввод, SELECT, TEXTAREA,
  р, цитаты, таблицы, я, ТД
  {
    границы: 0px;
    маржа: 0;
    обивка: 0;
  } 

Установить по умолчанию (базовый Styles) для элементов:

После установки (к нулю или нулевой) по умолчанию значения определенных атрибутов определенных элементов HTML, необходимо применить некоторые стили во всех случаях этих элементов. Это значение по умолчанию может варьироваться в соответствии с дизайном или по лучшей практике вы будете следовать.

Большинство CSS основы, всегда вводит новые значения по умолчанию, кроме сброса стилей браузера по умолчанию.
Эти значения по умолчанию быть лишен User-Agent по умолчанию (убраны на Reset CSS), это будет соответствовать во всех браузерах.

Помните, что базовый стили используются для задания стилей, которые будут использоваться разработки мире. например.

  HTML {размер шрифта: 77%; семейство шрифтов: Arial, без засечек;}
 сильный, h1, h2, h3, h4, h5, h6 {шрифта: жирный;} 

Аннотация стилей для HTML Общие компоненты и общие классы:

Большинство проектов, состоящих из нескольких страниц HTML имеют общие элементы, которые используются по всему сайту, например, для Какие-то формы, предупреждения и сообщения об ошибках, пользовательские всплывающие окна, лайтбоксы и т.д. Поскольку такие компоненты используются снова в разных проектах, это будет полезно для обеспечения набор классов, связанных с предопределенными стилями для этих компонентов, и вы можете сэкономить много времени.

Помимо определения многоразового определения стилей для HTML общих компонентов, мы могли бы абстрактные классы стилей, относящихся к типографии, цвета кожи или даже макет. Я сам как правило вы используете ... общие классы, как Clearfix, Font08, FontGrey, AlignL, DisplayB и т.д.

  формы ввода {границы: 0px; фон: # FFFFFF; обивка: 0px 10px; _padding: 0px 0px; высота: 26px; цвет: # 000000; высота строки: 30px; размер шрифта: 1.1em;}
 Форма текстовую {границы: 0px; фон: # FFFFFF; цвет: # 000000; размер шрифта: 0,9 ет, высота строки: 1.5em; переполнение: видимый;}
 . Fbold {шрифта: жирный, цвет: # CCCCCC;}
 . Fgrey {цвет: # 666666;}
 . Flightgrey {цвет: # bbbbbb;}
 . Clearfix {ясно: оба;}
 . Делитель {границы сверху: 1px твердых # 647B06, нижней границы: 1px твердых # 9CC00A, высота: 0px;}
 . Displayb {Дисплей: блок;}. Displayn {дисплей: нет;}
 . Alignr {выравнивания текста: справа}. Alignc {выравнивания текста: центр}
 . Floatr {float: право;}. Floatl {float: left;} 

Исправления к общим причуды браузера

Различные браузеры реализации CSS код и предоставляют различный уровень поддержки спецификации CSS. В результате этого .... "Browser совместимости", что мы разработчики оставили решать. В частности, IE6 преследует большинство CSS кодеров со сроком встретиться. Хорошей новостью является опыт собрал возможно МНОГОРАЗОВЫХ исправления этих проблем (часто называется как CSS хаки ).

Помните, что Храните эти хаки / исправления удобно

  / * Следующие зум: 1 правило специально для IE6 + IE7.  * /
    * HTML. Clearfix,
    *:. Первого ребенка + HTML Clearfix {
           зум: 1;
      } 

Держите Уточнение CSS

  • Привычка сайклинг-не придет к вам в день. Он имеет в развитых. Так что планируйте ваш Re-Велоспорт. Имейте это в виду, что вы могли бы абстрактный стиль по умолчанию, типография определений, макеты, стили элементов HTML и т.д. Попробуйте подумать о будущем.
  • Кроме того, оглянуться на свое прошлое проекта, это поможет определить стили, как правило, используют часто по porjects. Аннотация он.
  • Удалить все неиспользованные стили. Эта практика будет держать ваши CSS рамки от распространенный симптом называется «Раздувание» -
  • Удалить повторяющиеся стили.
  • Создайте набор стилей, которые являются достаточно гибкими, чтобы перенести его в разных проектах.

Look At рамки CSS

Наконец. Если у вас вдохновляет и намерены использовать одну или несколько структур CSS, Херес быстрый список нескольких популярных ....

  • 960 Grid System : 960 Grid System представляет собой попытку рационализировать рабочий процесс веб-разработки, обеспечивая широко использовались измерения, основанные на ширине 960 пикселей. Есть три варианта: 12, 16 и 24 колонн, которые могут быть использованы отдельно или в тандеме. Мысль ничего, что вы не можете создать для своего достаточно легко, система предоставляет сетку шаблоны для печати в PDF формате, которые можно использовать, чтобы эскиз страницы designs.Bet, это сделают профессиональные впечатления, если вы носите несколько листов при Вы идете к клиенту для сбора пользовательского интерфейса требованиям. Она также обеспечивает основную сетку шаблоны для популярного программного обеспечения, как Fireworks, Flash, InDesign, Illustrator, Photoshop, Visio и др. обеспечение "для начинающих на десять", чтобы начать проектные работы.
  • Концепция : Концепция предусматривает четко классифицировать CSS файлов сброс, Сетки, форм, Печать, Типография, плагины для кнопок, вкладок и спрайты и т.д. Она также обеспечивает поддержку для IE в качестве отдельной включить.
  • SenCSs : в отличие от двух предыдущих, SenCSs (произносится Sense), не имеет определения CSS Layout. Он включает шрифты, отступы, поля, таблицы, списки, заголовки, цитаты, формы и многое другое.
  • BlueTrip : Первоначально претензии к славе было то, что она представляет собой сочетание лучших черт от других библиотек других подобных Blue Print, поездки Оли ... откуда она и получила свое название. Его набор функций включает в себя 24 колонн, типография стилей, ORM стилей печати, кнопки и т.д.
  • YUI Grids : Привлечены к вам в сети разработчиков Yahooo, поддерживает жидкости ширину (100%), макеты, а также заданной фиксированной ширины макеты в 750px, 950px, 974px и, а также возможность легко настроить на любое количество. Как вы можете видеть, его технически просто компоненты макета. Юй также предоставляется HTML / CSS наборы для других элементов страницы
  • YAML (Yet Another многоколоночные Layout)
  • Emastic

Помните, что с помощью CSS рамки не означает, что вы ленивы, чтобы создать одну из своих ... Это означает, что вы умны, чтобы учиться у других и опыт ошибок, сэкономить время и повысить производительность!!


2010 13 марта 2010

@ Fontface: выражая его шрифт на ваш выбор, используя WebFonts

CSS завершены 10 лет существования в этом году! Те, кто были вокруг в течение некоторого времени, зарабатывая себе на хлеб (или нет) с помощью CSS, то вы, возможно, знают, как мы голодали за хороший выбор шрифтов. Даже при отсутствии шрифтов дизайнеров, таких как те, в CSS Zen Garden сделали использование изображений CSS фон для замены шрифтов в стремлении делать некоторые правосудие в свои проекты. Мы также попытались Flash / JavaScript ® хаки для достижения наших целей дизайн. Ни в коем случае это неправильный путь, чтобы получить шрифтов мы хотим в нашем веб-дизайна, но, безусловно, это не самый желательный способ. и на веб-дизайнером года, как я, полностью полагался на десять или около того шрифты для своих проектов.

Новейшие разработки в области веб-стандарты и форматы шрифтов позволяют сделать текст в HTML-шрифтов, кроме тех же старых шрифтов по умолчанию. Приходит в "@ fontface" decleration CSS.

@ Fontface provids решение ссылку на сам файл шрифта и извлечь его из Интернета. Использование @ fontface, разработчики могут использовать шрифты без замораживания текст в качестве фонового изображения. Реализация очень прямо вперед, как показано ниже, но, как и все хорошие вещи имеют CON части к нему, не все браузеры поддерживают один "тип шрифта". Если вы планируете использовать @ fontface на сайте с требованием поддержку кросс-браузер, то вы должны будете предоставить источников различных типов шрифтов того же самого.

  1. TrueType - формат, разработанный, чтобы хорошо выглядеть на экране. Рекомендуемые особенно для Windows, браузеров (Chrome).
  2. OpenType (ФФС) - это формат лучше для печати работы и не всегда хорошо выглядеть на Windows.
  3. СРВ - Вы нуждаетесь в этом формате, если вы хотите настроить таргетинг Internet Explorer. IE не будет использовать любой другой формат. Наши СРВ было бы считать "Lite", поскольку они не являются ни сжатые ни доменов ограничено.
  4. SVG - это XML-формат, поддерживаемый некоторыми браузерами, включая iPhone.
  5. WOFF - это кросс-браузерная, веб-шрифтов формата только легкий (шрифт данные почтовый сжатый) и может быть собран как с TrueType или PostScript (CFF) описывает. В настоящее время поддерживаются FireFox 3.6 +.

Использование @ fontface

  @ Шрифт лицу {
 семейство шрифтов: "CalligraphyFLFRegular;
 SRC: URL ('CalligraphyFLF.eot');
 SRC: местные («CalligraphyFLF), местные (« CalligraphyFLF), гиперссылка ('CalligraphyFLF.woff) формата ("WOFF), гиперссылка (' CalligraphyFLF.ttf) формата (" TrueType "), URL-адрес (" CalligraphyFLF . SVG # CalligraphyFLF) формата ("SVG");
 }
 @ Шрифт лицу {
   семейство шрифтов: "Ваш шрифт";
   SRC: URL ("Шрифты / font_filename.eot");
   SRC: местные («Альтернативные названия"), местные ("Alternatename"),
     URL ("Шрифты / font_filename.woff») формата ("WOFF"),
     URL ("Шрифты / font_filename.otf») формата ("OpenType"),
     URL ("Шрифты / font_filename.svg # font_filename») формата ("SVG");
   }
 h2 {семейство шрифтов: "Ваш шрифт", Грузия, засечек;} 

Как вы можете видеть из приведенного выше примера, чтобы включить выбранный шрифт шрифтом, нужно связать с набором fonttypes по тем же шрифтом. Поэтому люди относятся к нему как "Font Kit".
Есть наборы шрифтов доступны, что позволяет явно связь с CSS @ шрифт лицу имущество под лицензионное соглашение конечного пользователя (EULA).

Полезные ресурсы WebFont:

  • Шрифты для @ шрифт лицу вложение вики-страниц в http://webfonts.info/wiki/index.php?title=Main_Page
  • Ray Larabie . Он является известным дизайнером шрифтов, который сделал сотни интересных TrueType шрифты в свободном доступе для использования в Интернете. Его шрифты элегантный, декоративные, и игривая.
  • Дитер Steffmann еще один замечательный дизайнер шрифта. Он тоже сделал много красивых шрифтов, доступных для любого использования.
  • Шрифт магазин : предлагает шрифты, разработанные специально для использования сети. Более 30 самых успешных семей FontFont теперь доступны в виде веб-FontFonts. FontShop также имеет подробную инструкцию WebFont http://www.fontshop.com/blog/newsletters/pdf/webfontfontuserguide.pdf
  • Шрифт Белка : Витрины всех шрифтов, Font Squirrel предлагает для использования с @ шрифт лицу вложение CSS. Font Squirrel предлагает впечатляющий количество типов, делает его мертвым просто выбрать один из, так и обычным пользователям предлагается "наборы" - шрифт по вашему выбору, в нескольких форматах, в комплекте с демо HTML и CSS, который использует очень текущий @ шрифт лицу синтаксис . Они также предлагают способ сделать свой ​​собственный @ шрифт лицу комплектов . Если шрифт вы хотите использовать была лицензирована (как правило те, которые приходят с вашего компьютера, не обязательно хорошо), генератор производит СРВ, SVG, и эй! WOFF файлы.

2009 7 ноября 2009

CSS ZOOM - еще одна особенность IE, 3-пиксель сдвиг

Время и снова, когда все другие браузеры, видно, вести себя, как сказали по правилам W3C, IE спирали вас из развития духа, бросая истерику, что, кажется, не есть исправление. Только такой человек имеет этот вопрос в IE7.

Постановка проблемы:
Я и так может многих других серьезных веб-разработчики заметили, больше, чем много раз, что, когда вложенные плавает в макете, при наведении на некоторые ссылки (якорь теги), содержащий контейнер, кажется, сдвиг на несколько пикселей вправо . Я попытался Google решения этой проблемы, но вряд ли нашел ни одного вразумительного ответа, почему и когда это происходит (что могло бы помочь избежать этой проблемы не произошло), поэтому я никогда не находил четкое решение проблемы или ...

Возможное решение:
Из опыта, у меня есть уведомление 90% процентов времени, т.е., что эта проблема исправлена, добавив зум собственности в определении CSS от неправильного поведения контейнер ...

 # {Somediv
       зум: 1;
 }

снова причин неоднозначны ... попробуйте это ...
Некоторые элементы в IE есть "hasLayout" собственность, которая является "истинным" по умолчанию. Многие визуальные поведения CSS, например, альфа-фильтр работает только на элемент, который hasLayout. и {Zoom: 1}, кажется, дает целевых элементов hasLayout собственности .... Полезно? Я не думаю так ...

Зум свойство также, кажется, поддерживает Chrome, но его использование вмятина, похоже, намного негативное влияние на мое расположение ... попробовать его, если он работает для вас ... если это не так, закладки эту страницу в "кости CSS"


2009 28 июля 2009

CSS2.1 User Agent по умолчанию стилей

Вчера, после того, как вопрос, который я столкнулся с CSS сброс в Google Chrome ... Я думал о копать немного глубже в область Пользователь листы агента стиль ...
Найдено этой таблицы на значения по умолчанию CSS 2.1 User Agent стилей ... (для тех, кто не знает, что "User Agent стилей", это следовать Что такое User Agent Style Sheets (спецификации) .

Для получения полного списка CSS 2.1 User Agent стилей по умолчанию нажмите здесь


2009 27 июля 2009

User Agent стилей: Тайна Поля в Google Chrome

Сегодня, как и любой другой "День свиньи Ground", я работал над некоторыми CSS / бестабличные макетов. Все шло хорошо в IE 7, FF 3 и Chrome, ДО вдруг, я видел некоторые не-игнорируемые поля увидеть только в Google Chrome. Хотя очень странно и worring, было несколько новых ошибка / проблема, что я пришел accross, был, наконец, некоторые специи в моей земной работы. Сад (но хороший) она была исправлена ​​в течение нескольких минут зонда ...

В принципе, он похож Google Chrome игнорировал мои CSS Сброс (маржа: 0px). Это на самом деле был вызван стилей агента пользователя (-WebKit-обивка-старт: 40px). Таким образом, решение было сбросить этот стиль, установив отступы: 0 неправильно элементов.
Хороший способ предотвратить возникновение этой проблемы для любого элемента является использование глобальной Отдых CSS следующим

* {Маржа: 0; обивка: 0;}

Что такое User Agent Style Sheets (спецификации)?
Ниже приводятся выдержки из http://meiert.com/en/blog/20070922/user-agent-style-sheets/ , последующие ссылки, чтобы узнать больше о пользователе листы агента стиль

CSS 1 представляет идею о том, что каждый User Agent (UA, часто "браузер" или "Веб-клиент») будет иметь таблицу стилей по умолчанию, которая представляет документы в разумный - но, возможно, мирской - образом. CSS 2 сказано, что соответствующие ПА должны применяться стилей по умолчанию (или вести себя, как если бы они и сделали), а стиль по умолчанию агента пользователя листе должны представлять элементы языка документа таким образом, чтобы удовлетворять общим ожиданиям презентации язык документа, CSS 3, вероятно, того же мнения.

Поскольку спецификации CSS оставить его до реализации, следует ли использовать "реальные" стилей для отображения по умолчанию или нет, это не удивительно, что вы не можете найти таблицу стилей по умолчанию в папке установки каждого браузера. В отличие от Internet Explorer от Microsoft, а также оперы, например, (и, насколько я знаю), Gecko браузеров, как Firefox и Netscape Navigator (искать "html.css"), но и Konqueror сделать это довольно просто понять их по умолчанию стиль.


2009 18 февраля 2009

Добавление DropShadow Для изображений с помощью CSS

Другой быстрый урок. Вот то, просто и красиво, используя силу CSS ... но было трудно concieve (и это, конечно, не мне), чтобы начать с. Добавление DropShadow, может быть peice пирога для многих из нас, используя некоторые инструменты для редактирования изображений, как Photoshop, Fireworks НФА и др.
Причина, почему я выбрала тени с помощью CSS является то, что, как правило, при создании дизайна страницы / HTML заявления, требования сохранить итерации. Я имею в виду, в существующий веб-сайт с большим количеством изображений, как те, отображающий Freinds списка или галереи изображений, трудно будет переработать весь груз изображений, которые уже были выгружены, чтобы добавить или удалить тени, для этого вопрос.
Так что если вы сделали немного вперед мышления при создании HTMLS добавить эти дополнительные подразделения или правило, ситуация такова, что у вас есть цикл логика создания этих икон / миниатюр в XSL, PHP. JAVA или любой другой программы / скриптовый язык, вы можете добавить его в любое время, то это просто вопрос о шоу и скрыть эти тени с помощью свойства CSS Display, в соответствии с клиентами постоянно меняющихся требований ... Я havn't сделать этот вид дальновидных до этого ... но ahev прямо сейчас!

В приведенном ниже примере, исходное изображение без теней и dropshadows применяются по мере необходимости! Кроме того, я пошел немного больше, используя приемы из моих предыдущих Тута (Well! это, вероятно, кратчайшие различные учебные материалы, так что оправдано только называя их "Тута" 'ы) об использовании CSS клип собственности на показать только

Исходное изображение

original_image

Результаты CSS DropShadow
css_dropshadow_results
Посмотреть демо | Скачать файлы исходного кода


2009 17 февраля 2009

Understandng собственности CSS клип

Почему я хочу, чтобы это понимать?? Хамм ...!!

Большинство писателей CSS согласятся, что CSS клип собственности, вероятно, одним из самых неиспользованных свойств CSS. Это было так верно и для меня и был самый счастливый пренебрегать этим, пока я не начал изменения MooTools ДВА ручку (Pin) Slider Компонент (с Range Indicator) .

Существовал хорошее предложение от одного из компонентов пользователям изменять Slider Компонент использованием обрезанный Справочный изображения (по сравнению с переменной шириной деление), чтобы указать ползунка диапазона. Таким образом, пришло мое время, чтобы войти в удовольствие, но не-уставных (для меня конечно же) воды имущества клип CSS.

Ну! как трудно это может быть? Не так много на всех ... ДА и НЕТ. Синтаксис CSS собственности Клип довольно прямой, но смысл / usuage немного croocked. С памятью, как у меня, каждый раз, когда я сижу в переделку на мой Slider сценарий ... У меня есть tokeep возвращаясь к использованию этого клипа собственности, чтобы напомнить себе логику, которую я создал в мой сценарий .... Отсюда! думал пера его, в надежде вспомнить его будущем (а также в интересах тех, кто, кажется Поражает собственности клипа CSS)

Что такое CSS клип делать?

Клип является частью визуального модуля эффектов CSS 2.1. Проще говоря, его работа заключается в размещении видимое окно в верхней части объекта, который обрезается, поэтому обрезание изображений и создание миниатюр без создания дополнительных файлов (я уже поставил эту возможность для более эффективного использования в компоненте Slider :) )

Используя свойство клипа CSS, вы можете создать вырезку помощью формы прямоугольника. Как и многие другие свойства CSS (например, маржа, отступы и т.д.), используя прямоугольник, необходимо четыре координаты Top, Right, Bottom, Left (TRBL). Croocked природа этого свойства отражает, когда вы внимательно посмотрите, как клип вычисляет область отсечения, используя эти четыре координаты (посылает мозг в жеребьевке на некоторое время). Теперь, чтобы сбить вас с толку нижней начинается сверху, а правая начинается с левой стороны. :) . Вы видите, что я сказал? .... Таким образом, этот пост ...

Эта небольшая путаница может легко исчезнуть, с этим визуальным объяснение CSS Clip / прямоугольник собственности, как показано ниже!!

Требования CSS клип

Задача, которую мы начали это клип на следующем изображении Миниатюра на квадратный искать изображения (а также широкоугольные изображения)

original_image clip_demo
Оригинальный Thumbnal / Image Клип Требования к Sqaure Thumbmail

Результаты CSS клип

clip_results

Посмотреть демо | Скачать файлы исходного кода


2008 12 октября 2008

Вертикально (и по горизонтали) Центр Выравнивание содержимого в DIV с помощью CSS

Прежде, чем мы имели дело с CSS для создания макетов страниц нашего, совместив часть содержимого внутри ячейки таблицы, казалось, игра просто ребенка. Просто установите "align" или "VALIGN" свойство таблицы имеют выравнивание по вашему выбору, кусок пирога!
С макеты CSS, хотя у нас есть "вертикального выравнивания" свойства элементов, она не кажется такой простой, как «выравнивание» или «VALIGN" свойства. Чтобы быть более specifiic "вертикального выравнивания" никогда, кажется, решить любые ваши проблемы, особенно если будут писать кусок кросс-браузерный CSS.

Без использования таблиц HTML, задачи центровки на объект, будь то изображение или текст, содержащий внутри подразделения, вероятно, было каждый UI / CSS разработчики кошмар какой-то момент. Эта проблема дальнейшего экстраполирует ваши заботы согласования, если объект по центру динамический характер, т.е., когда его высота переменные (неизвестные высоты).

Несмотря на отсутствие известных прямым решением, которое будет работать по всему спектру браузеров мы имеем дело с того, что решение, которое я пытался прийти к действительно похоже на работу в нескольких браузерах, которые я пробовал в (IE6, IE 7 , FF).

РЕШЕНИЕ:
В браузерах Mozilla, Opera и Safari, странное поведение "вертикального выравнивания" имущество может быть доведена до его чувств, просто установив "дисплей" имуществом содержащие деление на «ячейки таблицы" (дисплей: ячейки таблицы) .

Проблема остается с IE браузеров семейства, который, однако, похоже, не понимают, что с "ячейки таблицы" имущество и невежды, как они есть, они просто игнорируют его. Решение приводится ниже, хотя простой, объявления нескольких DOM элементов в HTML, чтобы все произошло.

CSS и HTML выглядит следующим образом
.outer_container {
display: table;
text-align:center;
height: 140px;
width:140px;
position: relative;
overflow: hidden;
float:left;
margin:0px 10px 0px 0px;
}
.obj_container {
display: table-cell;
vertical-align: middle;
#position: absolute;
#top: 50%;
#left:50%;
}
.obj{
#position: relative;
#top: -50%;
#left:-50%;
margin:0px auto 0px auto;
}

HTML: -
<div class="outer_container">
<div class="obj_container">
<div class="obj"> <img src="image1.jpg"/> производителя <br/> просмотров: 3456 </ div>
</ Div>
</ Div>

Результат выглядит следующим образом: -

HTML_CSS_vertical_align_vertical_middle_aligned_images

просмотреть демонстрацию здесь | Скачать исходных файлов (Скачано 452 раз)


Понимание решения:
Для браузеров, которые понимают, дисплей: стол и дисплей: свойства ячейки таблицы, он редко нуждается в объяснении. Для IE, с использованием IE конкретных хак (хэш-хак), мы абсолютно позиционировать объект контейнера (obj_container) в половине доступную высоту. Затем объект (объект) в это положение относительно и перешел на половину его высоты ... Ну! Мне кажется, чтобы понять взгляд на вашем лице, но это работает. Попробуйте!
Приведенные выше методы комбинируются, чтобы дать нам крест над решением браузера.


CSS могут быть легко изменены, как показано ниже, чтобы достичь вертикального выравнивания: сверху или вертикального выравнивания: нижнее

TOP краю CSS
.obj_container_top {
display: table-cell;
vertical-align: top;
#position: absolute;
#top: 0%;
#left:50%;
}
.obj_top{
#position: relative;
#top: 0%;
#left:-50%;
margin:5px auto 0px auto;
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:10px;
color:#cccccc;
}

HTML: -
<div class="outer_container">
<div class="obj_container_top">
<div class="obj_top"> <img src="image1.jpg"/> производителя <br/> просмотров: 1234 </ div>
</ Div>
</ Div>

Результат выглядит следующим образом: -

HTML_CSS_vertical_align_vertical_top_aligned_images

НИЖНИЙ краю CSS
.obj_container_bottom {
display: table-cell;
vertical-align: bottom;
#position: absolute;
#bottom: 0%;
#left:50%;
}
.obj_bottom {
#position: relative;
#bottom: 0%;
#left:-50%;
margin:5px auto 0px auto;
}

HTML: -
<div class="outer_container">
<div class="obj_container_bottom">
<div class="obj_bottom"> <img src="image1.jpg"/> производителя <br/> просмотров: 1234 </ div>
</ Div>
</ Div>

Результат выглядит следующим образом: -

HTML_CSS_vertical_align_vertical_bottom_aligned_images

просмотреть демонстрацию здесь | Скачать здесь


Горизонтальное центрирование объекта просто достигается с краю собственности, установив края левого и правого края автоматическое

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

С надеждой, что когда-нибудь

  • вертикальное выравнивание собственности в CSS будет работать, как это делается в ячейке таблицы, без того, чтобы бить много вокруг да около
  • По крайней мере, установление разницы-топ: авто и разницы-дно: авто, как даст тот же результат, с краю левого и правого края набора для автоматического
  • Браузер войны будет над некоторыми день.
  • Там будет только один браузер для ВСЕХ.

Скачать CSS и HTML вышеуказанных решений здесь (Скачано 452 раз) .. для понятности, CSS не оптимизирована

PS: И, кстати, те эскизы некоторых фотографиях я щелкнул ... :)


2008 10 октября 2008

НЕ только для IE - CSS селекторы ребенка не работает в IE

CSS для Non-IE браузерах: его не новость для разработчиков, CSS, селекторы CSS ребенка как в примере ниже, кажется, не работает в IE.

, например, DIV> диапазона {} некоторые CSS, это означает, что "при пролете элемент является дочерним (а не внук или большой большой ребенок и т.д.) разделение элементов".

Но мы использовали это CON в нашу пользу. Исторически сложилось, что дочерний селектор используется для скрытия CSS команды IE. Просто путем размещения html>body перед любым CSS команда IE будет игнорировать:

html>body .foo { CSS commands go here ;}

Это работает, потому что <body> всегда ребенком <html> - это, конечно, никогда не будет внук или правнук из <html> .

Теперь, когда IE 7 понимает дочерний селектор, вы должны вставить пустой тег комментарий сразу после знаком больше IE 7 будет не понимает этот селектор (кто знает почему!?) И, следовательно, полностью игнорировать эту команду CSS.:

html> /**/ body .foo { CSS commands go here ;}

Если еще не видели это раньше, должны прочитать следующую, а также


NDK дома | Выражая IT | Выражая неба | Выражая Penmenship | Выражая трепет | выразить себя