<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>HTMLCSS.ru :.: Статьи пользователя Olga</title><link>http://htmlcss.ru/Olga/</link><description></description><language></language><generator></generator><pubDate>Sun, 20 May 2012 18:29:56 +0400</pubDate><item><title>Верстка под iphone и ipad, ограничения для background и img</title><link>http://htmlcss.ru/Olga/verstka_pod_iphone_i_ipad_ogranichenija_dlja_background_i_img/</link><pubDate>Fri, 13 Jan 2012 14:55:21 +0300</pubDate><guid>a3c65c2974270fd093ee8a9bf8ae7d0b</guid><description>&lt;div  class="img_left"&gt;&lt;a title="Обрезка фона в iphone, ipad"  class="fancy" href="/data/content/i0/108_88_or.jpg" &gt;&lt;img src="/data/content/i0/108_88.jpg"  alt="Обрезка фона в iphone, ipad" title="Обрезка фона в iphone, ipad" width="240" height="360" /&gt;&lt;/a&gt; Обрезка фона в iphone, ipad&lt;/div&gt;В последнем проекте столкнулись с некоторыми ограничениями при верстке сайта под iphone и ipad. Тема была изучена, решения все-таки нашлись о чем и хочу поделиться.&#13;
В нашем случае возникли сложности с фоновой картинкой(фотографией), при просмотре сайта на iphone или ipad часть изображения просто обрезалось.  Копнув глубже выяснилось, что iOS для мобильных устройств имеет набор ограничений.&#13;
&#13;
&lt;b&gt;Ограничение на физический размер изображения:&lt;/b&gt;&lt;ul&gt;&lt;li&gt;для устройств с ОЗУ менее чем 256 Мб – 3 Мегапикселя (т.е. физический размер изображения должен быть  ≤ 3*1024*1024 или 3 145 728 пикселей)&lt;/li&gt;&lt;li&gt;для устройств с оперативной памятью более или равным 256 Мб – 5 Мегапикселей (картинка ≤ 5*1024*1024)&lt;/li&gt;&lt;li&gt;для iOS 2.2.1 и более ранее версий, размер картинки не должен превышать 2 Мегапикселя (картинка ≤ 2*1024*1024).&lt;/li&gt;&lt;/ul&gt;&#13;
&#13;
&lt;b&gt;Варианты решения проблемы с большим background:&lt;/b&gt;&#13;
&#13;
1.	Сделать, специально для iphone и ipad,  уменьшенное фоновое изображение и подгружать его через @media. Для всего остального показываем наш большой фон любых размеров.  &#13;
Пример:&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;@media screen and (max-device-width: 1024px) {&lt;br /&gt;&#13;
.global { background: url(images/bg_small.jpg) 0 0  no-repeat !important; } &lt;br /&gt;&#13;
}&lt;/code&gt;&lt;/div&gt;&#13;
Т.е. фоновое изображение bg_small.jpg отобразится для блока с классом global для всех устройств с максимальным разрешением 1024.&#13;
&#13;
2.	Разрезать фоновую картинку на части, и прописать блоку сразу несколько фонов(CSS3) &#13;
Пример:&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;.global {&lt;br /&gt;&#13;
background:url(images/bg_part2.jpg) 50% 500px no-repeat, &lt;br /&gt;&#13;
url(images/bg_part1.jpg) 50% 0px no-repeat ;&lt;br /&gt;&#13;
}&lt;/code&gt;&lt;/div&gt;&#13;
Про это и другие ограничения iOS  можно почитать на сайте производителя:&#13;
&lt;a href="http://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariWebContent/CreatingContentforSafarioniPhone/CreatingContentforSafarioniPhone.html" onclick="this.target='target'"  target="_blank"  &gt;Know iOS Resource Limits&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Категории: &lt;a href="http://htmlcss.ru/tag/ipad/"&gt;ipad&lt;/a&gt; , &lt;a href="http://htmlcss.ru/tag/iphone/"&gt;iphone&lt;/a&gt; , &lt;a href="http://htmlcss.ru/tag/background/"&gt;background&lt;/a&gt; &lt;/i&gt;</description><category domain="http://htmlcss.ru/cat//"></category><category domain="http://htmlcss.ru/cat//"></category><category domain="http://htmlcss.ru/cat//"></category></item><item><title>Обучение. Однотипные блоки</title><link>http://htmlcss.ru/Olga/obuchenie_odnotipnie_bloki/</link><pubDate>Sat, 12 Nov 2011 13:12:30 +0300</pubDate><guid>812b4ba287f5ee0bc9d43bbf5bbe87fb</guid><description>Иногда встречаю в верстке два и более абсолютно одинаковых блока, но имеющие разные классы. &#13;
Например:&#13;
 [Image-1] &#13;
Визуально видно, что блоки совершенно одинаковые, но при верстке возникает вопрос, как быть с последним блоком, ведь каждый блок несет значение ширины блока и правого отступа, а у последнего блока нет отступа, и тут чтобы не отступать от макета, последнему блоку задают дополнительный класс, в котором прописан правый отступ равен нулю.&#13;
Но правильнее прописать родительскому блоку таких элементов отрицательный правый маргин, равный значению правого отступа однотипных блоков, если же значение велико, и родительский блок заступать на другие блоки, либо же выступит за область самой страницы, для этого нужно создать еще один родительский блок со значением overflow:hidden &#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;&amp;lt;div class="catalog"&amp;gt;&amp;lt;div class="catalog_inner"&amp;gt;&lt;br /&gt;&#13;
	&amp;lt;div class="item"&amp;gt;…&amp;lt;/div&amp;gt;&lt;br /&gt;&#13;
	&amp;lt;div class="item"&amp;gt;…&amp;lt;/div&amp;gt;…&lt;br /&gt;&#13;
	&amp;lt;div class="clear"&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&#13;
&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;/code&gt;&lt;/div&gt;&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;.cl {clear:both; }&lt;br /&gt;&#13;
.catalog {overflow:hidden;}&lt;br /&gt;&#13;
.catalog_inner {margin:0 -38px 0 0; }&lt;br /&gt;&#13;
.item {width:90px;  float:left; padding: 0 38px 0 0;}&lt;/code&gt;&lt;/div&gt;&#13;
[Image-2]&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Категории: &lt;a href="http://htmlcss.ru/tag/%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5/"&gt;обучение&lt;/a&gt; &lt;/i&gt;</description><category domain="http://htmlcss.ru/cat//"></category></item><item><title>Обучение. display:inline-block</title><link>http://htmlcss.ru/Olga/obuchenie_displayinlineblock/</link><pubDate>Thu, 27 Oct 2011 14:12:12 +0400</pubDate><guid>3ef815416f775098fe977004015c6193</guid><description>&lt;p&gt;Знания накапливаются с практикой. Вначале решение какой-то задачи кажется  не возможным, потом решение  может даже прийти само собой, но чаще конечно решения перенимаются.  Перенимайте ;)&lt;/p&gt;&#13;
&lt;p&gt;Ниже приведена задача и ее решение, раньше казалось не осуществимым, хотя так оно и было, ведь FF2 не поддерживал свойство display:inline-block,  потом еще долго я не использовала данный метод.&lt;/p&gt;&#13;
&#13;
&lt;h3&gt;Задача&lt;/h3&gt;&#13;
Надо сделать верстку блоков с фиксированной шириной, но не с фиксированной высотой, + резиновая верстка, т.е. при разных значениях разрешения экрана, количество блоков в ряду будет изменяться.&#13;
[Image-1] &#13;
&#13;
&lt;h3&gt;Решение&lt;/h3&gt;&#13;
Html&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;&amp;lt;div class="item"&amp;gt;&lt;br /&gt;&#13;
	&amp;lt;a href="#"&amp;gt;&amp;lt;img src="img.jpg" width="87" height="85" alt="" /&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;&#13;
	текст&lt;br /&gt;&#13;
&amp;lt;/div&amp;gt;&lt;br /&gt;&#13;
&amp;lt;div class="item"&amp;gt;&lt;br /&gt;&#13;
	&amp;lt;a href="#"&amp;gt;&amp;lt;img src="img.jpg" width="87" height="85" alt="" /&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;&#13;
	текст&lt;br /&gt;&#13;
&amp;lt;/div&amp;gt;&lt;/code&gt;&lt;/div&gt;&#13;
А в CSS пропишем следующее&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;.item {display:inline-block;  width:130px; padding:22px 33px 17px 0;  vertical-align:top;}&lt;/code&gt;&lt;/div&gt;&#13;
&#13;
Т.е. наши блоки превращаются в блок, ведущий себя как строчный элемент. Но в IE6 и IE7 результат будет иной, поэтому для этих браузеров надо прописать &#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;.item {display:inline;}&lt;/code&gt;&lt;/div&gt;&#13;
&#13;
&lt;h3&gt;Рабочий пример во вложении&lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Категории: &lt;a href="http://htmlcss.ru/tag/css/"&gt;css&lt;/a&gt; , &lt;a href="http://htmlcss.ru/tag/html/"&gt;html&lt;/a&gt; , &lt;a href="http://htmlcss.ru/tag/display%3Ainline-block/"&gt;display:inline-block&lt;/a&gt; &lt;/i&gt;</description><category domain="http://htmlcss.ru/cat//"></category><category domain="http://htmlcss.ru/cat//"></category><category domain="http://htmlcss.ru/cat//"></category></item><item><title>Не стандартные шрифты, используем сервис Google Fonts</title><link>http://htmlcss.ru/Olga/ne_standartnie_shrifti_ispolzuem_servis_google_fonts/</link><pubDate>Tue, 23 Aug 2011 23:24:50 +0400</pubDate><guid>d82c8d1619ad8176d665453cfb2e55f0</guid><description>Сервис Google Fonts предоставляет простую возможность использования красивых WEB шрифтов для сайтов.  Сейчас сервис предоставляет 23 вида кириллических  шрифта.  &#13;
На странице&lt;a href=" http://www.google.com/webfonts"&gt; http://www.google.com/webfonts&lt;/a&gt; выбираем Script: Cyrillic (если надо русский шрифт). Выбираем нужный шрифт. Нажимаем кнопку «Quick-use» и сервис предлагает три вида кода на выбор, для внедрения шрифта. Вставляем один из предложенных  кодов в &amp;lt;head&amp;gt;, и можно уже использовать данный шрифт на сайте, прописывая его в стилях через font или font-family.&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Категории: &lt;a href="http://htmlcss.ru/tag/%D0%9D%D0%B5+%D1%81%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D1%8B%D0%B5+%D1%88%D1%80%D0%B8%D1%84%D1%82%D1%8B/"&gt;Не стандартные шрифты&lt;/a&gt; , &lt;a href="http://htmlcss.ru/tag/%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81+Google+Fonts/"&gt;сервис Google Fonts&lt;/a&gt; &lt;/i&gt;</description><category domain="http://htmlcss.ru/cat//"></category><category domain="http://htmlcss.ru/cat//"></category></item><item><title>Вертикальное выравнивание в div или в блоке с фиксированной высотой</title><link>http://htmlcss.ru/Olga/viravnivanie_tekstakartinki_po_tsentru_po_vertikali_v_bloke_s_fiksirovannoj_visotoj/</link><pubDate>Tue, 21 Jun 2011 15:12:41 +0400</pubDate><guid>c16a5320fa475530d9583c34fd356ef5</guid><description>Существует два способа выравнивания содержимого по центру относительно высоты блока, один самый простой - с использованием таблицы. Но таблицу желательно использовать только там, где явная таблица. И этот способ не применим, если надо выровнять содержимое  внутри ссылки. Поэтому нужен и второй способ.&#13;
Код&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;&amp;lt;a href="#"&amp;gt;&amp;lt;span&amp;gt;Статьи&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&lt;br /&gt;&#13;
&amp;lt;a href="#"&amp;gt;&amp;lt;span&amp;gt;Сопутствующие услуги&amp;lt;/span&amp;gt;&amp;lt;/a&amp;gt;&lt;/code&gt;&lt;/div&gt;&#13;
В файле стилей прописываем&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;a {display:table;  height:48px; width:120px; text-align:center; }&lt;br /&gt;&#13;
a span  {display:table-cell;  height:48px; vertical-align:middle;}&lt;/code&gt;&lt;/div&gt;&#13;
Но значение display:table  и display:table-cell, не понимают браузеры IE 6 и 7 версии, поэтому для этих браузеров надо прописать следующее&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;a {//display:block; }&lt;br /&gt;&#13;
a span { //display:block; //height:auto; //margin-top: expression((24-parseInt(offsetHeight)/2)  &amp;lt;0 ? "0" : 24-(parseInt(offsetHeight)/2) +'px') ;	}&lt;/code&gt;&lt;/div&gt;&#13;
&lt;b&gt;Пример вертикального выравнивания в div элементе&lt;/b&gt;&#13;
&#13;
Код&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;&amp;lt;div class="middle"&amp;gt;&amp;lt;div&amp;gt;&amp;lt;img src="images/img.jpg" width="60" height="60" alt="" /&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/div&amp;gt;&lt;/code&gt;&lt;/div&gt;&#13;
В файле стилей прописываем&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;.middle {display:table;  height:80px; width:80px; text-align:center; }&lt;br /&gt;&#13;
.middle div  {display:table-cell;  height:80px; vertical-align:middle;}&lt;br /&gt;&#13;
.middle div img {vertical-align:middle;}&lt;/code&gt;&lt;/div&gt;&#13;
Для IE 6 и 7 прописываем:&#13;
&lt;div class="code"&gt;&lt;code class="prettyprint"&gt;.middle {//display:block; }&lt;br /&gt;&#13;
.middle div { //display:block; //height:auto; //margin-top: expression((40-parseInt(offsetHeight)/2)  &amp;lt;0 ? "0" : 40-(parseInt(offsetHeight)/2) +'px') ;	}&lt;/code&gt;&lt;/div&gt;&#13;
в выражениях  &lt;div class="code"&gt;&lt;code class="prettyprint"&gt;expression((24-parseInt(offsetHeight)/2)  &amp;lt;0 ? "0" : 24-(parseInt(offsetHeight)/2) +'px') и expression((40-parseInt(offsetHeight)/2)  &amp;lt;0 ? "0" : 40-(parseInt(offsetHeight)/2) +'px')&lt;/code&gt;&lt;/div&gt;  указаны значения 24 и 40 – это половина высоты родительского блока, т.е. 48/2 (a {height:48px;}) и 80/2 (.middle {height:80px; })&#13;
&#13;
//- свойства прописаны после этих знаков воспринимаются только браузерами IE6, IE7&#13;
&#13;
Фактически вертикальное выравнивание происходит в обоих случаях  в ячейке таблицы, только в первом случае задается явно, во втором средствами css. В примерах таблицами (элементы, у которых прописано свойство display:table) являются ссылка “a”  и блок “.middle”, ячейки (элементы с параметром display:table-cell) – “ a span ” и “.middle div”. Но так как эти свойства не работают в браузерах IE6, 7, для них принцип выравнивания иной. &#13;
Здесь элементы  “a”, “ a span ”, “.middle” и “.middle div” блочные (display:block;), высота не фиксированная (height:auto;) дочернему элементу “ a span ”,  “middle div” , и с помощью выражения вычисляется верхний отступ дочернего элемента от родительского&#13;
= /2 – /2&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Категории: &lt;a href="http://htmlcss.ru/tag/%D0%B2%D0%B5%D1%80%D1%82%D0%B8%D0%BA%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5+%D0%B2%D1%8B%D1%80%D0%B0%D0%B2%D0%BD%D0%B8%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5/"&gt;вертикальное выравнивание&lt;/a&gt; &lt;/i&gt;</description><category domain="http://htmlcss.ru/cat//"></category></item><item><title>Список наиболее часто используемых cкриптов и плагинов на jquery</title><link>http://htmlcss.ru/Olga/spisok_naibolee_chasto_ispolzuemikh_ckriptov_i_plaginov_na_jquery/</link><pubDate>Sun, 29 May 2011 19:21:38 +0400</pubDate><guid>02e74f10e0327ad868d138f2b4fdd6f0</guid><description>Все чаще и чаще приходится использовать библиотеки готовых скриптов.&#13;
Ниже представлен список наиболее часто используемых мною cкриптов и плагинов на jquery&#13;
&#13;
&#13;
1. Для стилизированных элементов форм &#13;
a.	&lt;a href="http://www.xiper.net/collect/html-and-css-tricks/verstka-form/nice-select-jquery.html" onclick="this.target='target'"   &gt;Select&lt;/a&gt; &#13;
b.	&lt;a href="http://www.xiper.net/collect/html-and-css-tricks/verstka-form/nice-checkbox.html" onclick="this.target='target'"   &gt;Checkbox&lt;/a&gt; &#13;
c.	&lt;a href="http://www.xiper.net/collect/html-and-css-tricks/verstka-form/nice-radio.html" onclick="this.target='target'"   &gt;Radio&lt;/a&gt;&#13;
d.	И &lt;a href="http://www.xiper.net/collect/js-plugins/forms/cutext.html" onclick="this.target='target'"   &gt;техtarea&lt;/a&gt;&#13;
&#13;
3.	&lt;a href="http://flowplayer.org/tools/demos/index.html" onclick="this.target='target'"   &gt;Разнообразные инструменты jquery&lt;/a&gt;,  легкие в использовании&#13;
4.	&lt;a href="http://sorgalla.com/jcarousel/" onclick="this.target='target'"   &gt;Карусель&lt;/a&gt;&#13;
5.	&lt;a href="http://php.scripts.psu.edu/rja171/widgets/rating.php" onclick="this.target='target'"   &gt;Звездный рейтинг&lt;/a&gt;&#13;
6.	&lt;a href="http://www.kelvinluck.com/assets/jquery/datePicker/v2/demo/" onclick="this.target='target'"   &gt;Выбор даты&lt;/a&gt;&#13;
7.	&lt;a href="http://jscrollpane.kelvinluck.com/" onclick="this.target='target'"   &gt;Стилизированные полосы прокрутки&lt;/a&gt;&#13;
8.	&lt;a href="http://docs.jquery.com/Plugins/autocomplete" onclick="this.target='target'"   &gt;автозаполнение input&lt;/a&gt;&#13;
9.     &lt;a href="http://jqueryui.com/demos/slider/" onclick="this.target='target'"   &gt;Виджет Slider (шкала с бегунком)&lt;/a&gt;&#13;
10.   &lt;a href="http://fancybox.net/" onclick="this.target='target'"   &gt;Fancybox - всплывающее изображение&lt;/a&gt;&#13;
11.	&lt;a href="http://leandrovieira.com/projects/jquery/lightbox/" onclick="this.target='target'"   &gt;LightBox  - другой плагин для всплывающего изображения&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;i&gt;Категории: &lt;a href="http://htmlcss.ru/tag/jquery/"&gt;jquery&lt;/a&gt; &lt;/i&gt;</description><category domain="http://htmlcss.ru/cat//"></category></item></channel></rss>

