<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tomasz Marszał Blog &#187; opera</title>
	<atom:link href="http://bymarszal.pl/blog/tag/opera/feed/" rel="self" type="application/rss+xml" />
	<link>http://bymarszal.pl/blog</link>
	<description>WebDevelopment. Informatyka. Ciekawe projekty.</description>
	<lastBuildDate>Fri, 16 Sep 2011 19:25:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Browsers&#8217; issues #2</title>
		<link>http://bymarszal.pl/blog/2010/02/23/browsers-issues-2/</link>
		<comments>http://bymarszal.pl/blog/2010/02/23/browsers-issues-2/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 20:00:14 +0000</pubDate>
		<dc:creator>Tomek</dc:creator>
				<category><![CDATA[informatyka]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[ie]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[opera]]></category>
		<category><![CDATA[przeglądarki]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://bymarszal.pl/blog/?p=509</guid>
		<description><![CDATA[<a href="http://bymarszal.pl/blog/2010/02/13/browsers-issues-2/"><img src="http://bymarszal.pl/blog/wp-content/uploads/2010/02/web-browsers-150x150.jpg" alt="" title="web-browsers" width="150" height="150" class="alignleft size-thumbnail wp-image-533" /></a>W drugim odcinku, zgodnie z zapowiedzią, przygotowałem test porównawczy pozycjonowania kwadratu o określonej szerokości (100px) na środku strony za pomocą trzech metod:
<ul>
	<li>jako tło strony z parametrem background-position:center;</li>
	<li>z wykorzystaniem position:absolute;left:50%;margin-left:-50px;</li>
	<li>z wykorzystaniem margin-left:auto;margin-right:auto;</li>
</ul>]]></description>
			<content:encoded><![CDATA[<p><a href="http://bymarszal.pl/blog/wp-content/uploads/2010/02/web-browsers.jpg"><img src="http://bymarszal.pl/blog/wp-content/uploads/2010/02/web-browsers.jpg" alt="" title="web-browsers" width="150" height="150" class="alignleft size-full wp-image-533" /></a>W drugim odcinku, zgodnie z zapowiedzią, przygotowałem test porównawczy pozycjonowania kwadratu o określonej szerokości (100px) na środku strony za pomocą trzech metod:</p>
<ul>
<li>jako tło strony z parametrem background-position:center;</li>
<li>z wykorzystaniem position:absolute;left:50%;margin-left:-50px;</li>
<li>z wykorzystaniem margin-left:auto;margin-right:auto;</li>
</ul>
<p>Podobnie jak w poprzednim odcinku, przygotowałem <a href="http://bymarszal.pl/blog/wp-content/uploads/2010/02/test.html">stronę testową</a>. Zgodnie z intuicją wszystkie trzy kwadraty powinny ułożyć się jeden nad drugim i dać jeden prostokąt o wymiarach 100×300px.</p>
<h2>Firefox 3.5, Opera, IE8</h2>
<p><a href="http://bymarszal.pl/blog/wp-content/uploads/2010/02/firefox3.5.gif"><img class="alignleft size-full wp-image-520" title="firefox3.5" src="http://bymarszal.pl/blog/wp-content/uploads/2010/02/firefox3.5.gif" alt="" width="120" height="320" /></a>Powyższe trzy przeglądarki wyświetliły wszystko zgodnie z przewidywaniami: kwadraty jeden pod drugim, równo i bez problemów. Miłą niespodzianką było to, że Internet Explorer 8 wyświetlił wszystko poprawnie. W tych trzech przeglądarkach pozycja wyśrodkowanego tła i wyśrodkowanych elementów przekształcana jest do liczby całkowitej jednym sposobem (w FF3.5 przez zaokrąglenie, w Operze i IE8 &#8211; przez obcięcie części ułamkowej).</p>
<h2 style="clear:both;padding:1em;">Firefox 3.0, IE7</h2>
<p><a href="http://bymarszal.pl/blog/wp-content/uploads/2010/02/firefox3.0.gif"><img class="alignleft size-full wp-image-522" title="firefox3.0" src="http://bymarszal.pl/blog/wp-content/uploads/2010/02/firefox3.0.gif" alt="" width="120" height="320" /></a>Zaskoczeniem okazał się Firefox 3.0, który wyświetla wyśrodkowane tło przesunięte o 1px w lewo w stosunku do pozostałych kwadratów. Związane jest to z tym, że pozycja tła w jest wyliczana przez obcięcie części ułamkowej, a pozycja elementu na stronie &#8211; przez zaokrąglenie. Oczywiście przesunięcie występuje tylko wtedy, kiedy szerokość okna przeglądarki (bez elementów interfejsu: paska przewijania, brzegów okna) jest liczbą nieparzystą.</p>
<h2 style="clear:both;padding:1em;">Safari, Chrome</h2>
<p><a href="http://bymarszal.pl/blog/wp-content/uploads/2010/02/webkit.gif"><img src="http://bymarszal.pl/blog/wp-content/uploads/2010/02/webkit.gif" alt="" title="webkit" width="140" height="380" class="alignleft size-full wp-image-524" /></a>W przeglądarkach na silniku webkit występuje odwrotny problem niż w FF3.0 i IE7 &#8211; pozycja tła tworzona jest przez zaokrąglenie, a pozostałych elementów przez obcięcie, co przy nieparzystej szerokości strony tworzy przesunięcie tła o 1px w prawo.</p>
<h2 style="clear:both;padding:1em;">IE6</h2>
<p><a href="http://bymarszal.pl/blog/wp-content/uploads/2010/02/ie61.gif"><img src="http://bymarszal.pl/blog/wp-content/uploads/2010/02/ie61.gif" alt="" title="ie6" width="120" height="310" class="alignleft size-full wp-image-527" /></a>Ta przeglądarka jest, oczywiście, klasą samą w sobie. Dla tła w ogóle nie działa automatyczne wyśrodkowanie przez co nie znalazło się ono na screenie (wyświetlone było w lewym górnym rogu strony testowej), z kolei element wyśrodkowany przez position:absolute został ustawiony przez zaokrąglenie, a przez margin:auto &#8211; przez obcięcie.</p>
<h2 style="clear:both;padding:1em;">Rozwiązanie</h2>
<p>Tutaj, niestety, nie ma optymistycznych wieści. Wprawdzie można mieć nadzieję na nową wersję webkita, która naprawi problem w Safari i Chrome, a także na wyjście z użycia IE6, IE7 i FF3.0, ale trzeba założyć, że nie nastąpi to szybko. Jedynym sensownym rozwiązaniem wydaje się omijanie tego problemu i umieszczanie wyśrodkowanego tła strony tylko wtedy, gdy nie szkodzi nam jednopikselowe przesunięcie w jedną lub drugą stronę, a także wyśrodkowywanie elementów na stronie przy użyciu tylko jednej, wybranej metody.</p>
]]></content:encoded>
			<wfw:commentRss>http://bymarszal.pl/blog/2010/02/23/browsers-issues-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

