<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>XHTML-Lab</title>
	
	<link>http://www.xhtml-lab.com</link>
	<description>PSD to HTML Conversion</description>
	<lastBuildDate>Tue, 14 Feb 2012 10:25:02 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Xhtml-lab" /><feedburner:info uri="xhtml-lab" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Should you upgrade to HTML5?</title>
		<link>http://feedproxy.google.com/~r/Xhtml-lab/~3/v43IuIOYYQY/should-you-upgrade-to-html5</link>
		<comments>http://www.xhtml-lab.com/psd-to-html/should-you-upgrade-to-html5#comments</comments>
		<pubDate>Sun, 17 Jul 2011 11:40:11 +0000</pubDate>
		<dc:creator>Jaspreet Kaur</dc:creator>
				<category><![CDATA[PSD to HTML]]></category>

		<guid isPermaLink="false">http://www.xhtml-lab.com/?p=442</guid>
		<description><![CDATA[We all know that HTML5 is here now, and it’s here to stay. As HTML5 is yet in its development phase, it will take years to move on to the next version of HTML, also HTML5 is being developed keeping in mind all the requirements of today’s web development. So we can say the first [...]]]></description>
			<content:encoded><![CDATA[<p>We all know that HTML5 is here now, and <strong>it’s here to stay</strong>. As HTML5 is yet in its development phase, it will take years to move on to the next version of HTML, also HTML5 is being developed keeping in mind all the requirements of today’s web development. So we can say the first important feature of HTML5 is that it’s <strong>future proof</strong>, for another 10-12 years at least and that’s really a big duration in the world of internet. (<em>Also it is supported by old browsers also with help of a small JavaScript code.</em>)</p>
<p>Let’s have a look at the other features that can help you decide should you upgrade to HTML5 today or not?<span id="more-442"></span></p>
<p><strong>More meaningful markup + Added SEO Benefits</strong>: HTML5 have added few new elements in the quiver of HTML elements, these elements like header, section, nav, footer adds extra meaning to your markup. Screen readers and search engines can now better understand the various areas of your webpage, which helps in determining the importance of content. For example, a heading of article have more importance then a heading of footer, and with help of new HTML5 elements search engines can now understand which part of your web page is an article and which is a footer.</p>
<p><strong>New APIs: </strong>The term APIs sounds more like a programming related term, but HTML5 has added a number of APIs which can be controlled with help of JavaScript to add life to your web applications. For example, you can now have accessible charts created on runtime in a HTML5 canvas with help of new canvas API. Or you can make your application available offline with HTML5’s storage API. There are much more like Drag &amp; Drop, Geolocation, Audio, and Video, etc.</p>
<p><strong>Mobile Support: </strong>One of the most exciting things about using HTML5 is that it is supported by all major Web Browsers too, that means if your markup is coded nicely it will work on all latest mobile phones. The Palm Pre, iPhone and the Google Android phone all have browsers that support HTML5.</p>
<p>Did this article helped you in taking a decision to upgrade your web pages to HTML5 today, or do you still have any other thoughts in mind? Share your thoughts with us, and we shall be happy to assist you in upgrading your web pages to HTML5 or clearing any doubts (if you still have them).</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=v43IuIOYYQY:eR6hHj735I8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=v43IuIOYYQY:eR6hHj735I8:PGwndh0eds8"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?i=v43IuIOYYQY:eR6hHj735I8:PGwndh0eds8" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Xhtml-lab/~4/v43IuIOYYQY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.xhtml-lab.com/psd-to-html/should-you-upgrade-to-html5/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.xhtml-lab.com/psd-to-html/should-you-upgrade-to-html5</feedburner:origLink></item>
		<item>
		<title>Border-image</title>
		<link>http://feedproxy.google.com/~r/Xhtml-lab/~3/g_zA1r3ubEA/border-image</link>
		<comments>http://www.xhtml-lab.com/css3-reference/border-image#comments</comments>
		<pubDate>Thu, 23 Jun 2011 22:14:56 +0000</pubDate>
		<dc:creator>Jaspreet Kaur</dc:creator>
				<category><![CDATA[CSS3 Reference]]></category>

		<guid isPermaLink="false">http://www.xhtml-lab.com/?p=342</guid>
		<description><![CDATA[With this property you can define an image to be used instead of the normal border of an element. This property is a shorthand property for setting &#8216;border-image-source&#8217;, &#8216;border-image-slice&#8217;, &#8216;border-image-width&#8217;, &#8216;border-image-outset&#8217; and &#8216;border-image-repeat&#8217;. Value border-image-source - The path to the image to be used as a border border-image-slice -The inward offsets of the image-border border-image-width [...]]]></description>
			<content:encoded><![CDATA[<p>With this property you can define an image to be used instead of the normal border of an element. This property is a shorthand property for setting &#8216;border-image-source&#8217;, &#8216;border-image-slice&#8217;, &#8216;border-image-width&#8217;, &#8216;border-image-outset&#8217; and &#8216;border-image-repeat&#8217;.</p>
<p><span id="more-342"></span></p>
<h4>Value</h4>
<ul>
<li><strong>border-image-source -</strong> The path to the image to be used as a border</li>
<li><strong>border-image-slice -</strong>The inward offsets of the image-border</li>
<li><strong>border-image-width -</strong> The widths of the image-border</li>
<li><strong>border-image-outset -</strong> The amount by which the border image area extends beyond the border box</li>
<li><strong>border-image-repeat -</strong> Whether the image-border should be repeated, rounded or stretched</li>
</ul>
<h4>Example</h4>
<p><code>div<br />
{-moz-border-image:url(border.png) 30 30 round; /* Firefox */<br />
-webkit-border-image:url(border.png) 30 30 round; /* Safari and Chrome */<br />
border-image:url(border.png) 30 30 round;}<br />
  </code></p>
<h4>Technical Specifications</h4>
<table cellspacing="0" cellpadding="0" id="main_border" class="tech_spec">
<tr>
<td class="left_bold">Inherit</td>
<td class="right_normal">yes</td>
</tr>
<tr>
<td class="left_bold">Media</td>
<td class="right_normal">visual</td>
</tr>
<tr>
<td class="left_bold">CSS Support</td>
<td class="right_normal">CSS3</td>
</tr>
<tr>
<td class="left_bold">Values</td>
<td class="right_normal">&lt;&#8217;border-image-source&#8217;&gt; || &lt;&#8217;border-image-slice&#8217;&gt; [ / &lt;'border-image-width'&gt;? [ / &lt;'border-image-outset'&gt; ]? ]? || &lt;&#8217;border-image-repeat&#8217;&gt;</td>
</tr>
<tr>
<td class="left_bold">Initial Value</td>
<td class="right_normal">depends on individual properties</td>
</tr>
<tr>
<td class="left_bold">Applies to</td>
<td class="right_normal">all elements</td>
</tr>
<tr>
<td class="left_bold">W3C</td>
<td class="right_normal"><a href="http://www.w3.org/TR/2011/CR-css3-background-20110215/#the-border-image" target="_blank" rel="external">w3c documentation</a></td>
</tr>
</table>
<h4>Browser compatibility chart</h4>
<table cellspacing="0" cellpadding="0" id="main_border" class="browser_support">
<tr class="bdr_inner">
<td><img src="http://cdn.xhtml-lab.com/images/logo_ie.jpg" width="24" height="20" alt="ie"></td>
<td class="partial_sup">5.5</td>
<td class="partial_sup">6.0</td>
<td class="partial_sup">7.0</td>
<td class="partial_sup">8.0</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_firefox.jpg" width="24" height="22" alt="ie"></td>
<td class="full_sup">1.0</td>
<td class="full_sup">1.5</td>
<td class="full_sup">2.0</td>
<td class="full_sup">3.0</td>
<td class="full_sup">3.5</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_opera.jpg" width="24" height="23"></td>
<td class="full_sup">9.2</td>
<td class="full_sup">9.5</td>
<td class="full_sup">10.0</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_safari.jpg" width="24" height="23"></td>
<td class="full_sup">1.3</td>
<td class="full_sup">2.0</td>
<td class="full_sup">3.1</td>
<td class="full_sup">4.0</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_chrome.jpg" width="24" height="22"></td>
<td class="full_sup">2.0</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_full.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">Full Support</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_partial.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">Partial Support (Buggy)</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_no.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">No Support</td>
</tr>
</table>
<p><strong>Note:</strong> No versions of Internet Explorer (including IE8) support the property value &#8220;inherit&#8221;.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=g_zA1r3ubEA:KJH6Ndr2ung:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=g_zA1r3ubEA:KJH6Ndr2ung:PGwndh0eds8"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?i=g_zA1r3ubEA:KJH6Ndr2ung:PGwndh0eds8" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Xhtml-lab/~4/g_zA1r3ubEA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.xhtml-lab.com/css3-reference/border-image/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.xhtml-lab.com/css3-reference/border-image</feedburner:origLink></item>
		<item>
		<title>Understanding Project Requirements</title>
		<link>http://feedproxy.google.com/~r/Xhtml-lab/~3/_8nK0D-Wxlc/understanding-project-requirements</link>
		<comments>http://www.xhtml-lab.com/psd-to-html-conversion-guide/understanding-project-requirements#comments</comments>
		<pubDate>Wed, 22 Jun 2011 17:32:53 +0000</pubDate>
		<dc:creator>Alok Jain</dc:creator>
				<category><![CDATA[PSD to HTML Conversion Guide]]></category>
		<category><![CDATA[PSD to HTML Conversion]]></category>

		<guid isPermaLink="false">http://www.xhtml-lab.com/?p=395</guid>
		<description><![CDATA[In the last article, I covered some commonly used terms, to make you familiar with PSD to HTML conversion (if you are new to this field). This was required to make you familiar with commonly used terms. Another important aspect before you dive into the code, is to understand the project requirements accurately, and clarifying [...]]]></description>
			<content:encoded><![CDATA[<p>In the <a title="Understanding the Terminology" href="http://www.xhtml-lab.com/psd-to-html-conversion-guide/understanding-the-terminology">last article</a>, I covered some commonly used terms, to make you familiar with PSD to HTML conversion (if you are new to this field). This was required to make you familiar with commonly used terms.</p>
<p>Another important aspect before you dive into the code, is to understand the project requirements accurately, and clarifying any doubts before you start writing code.<br />
<span id="more-395"></span><br />
Sometimes, design files provided by clients are self explanatory, and these include the required additional information that a programmer needs. However some times, programmer needs to clarify certain things from the client. It is always a good idea to educate your client on <a title="Prepare your PSD for HTML" href="http://www.xhtml-lab.com/markup/prepare-your-psd-for-html">how to prepare a PSD for HTML</a>, but you need to check the provided design file before continuing to code.</p>
<p>The following checklist covers most common points that needs clarification; however these may vary in design to design.</p>
<ol>
<li><strong>Page Width:</strong> The typically used layout width is 960px or 980px. Sometimes designers create wider layouts, or add some effects like shadow that increases the page width. You must measure the width of layout and if you find that it will generate a horizontal scroll on page, you should update the client and confirm how you should proceed.</li>
<li><strong>Rollovers:</strong> The hyperlinks and navigation areas usually require a rollover effect. If it is not provided in the design file, you should ask the client if rollover effect is required.</li>
<li><strong>JavaScript Functionality:</strong> If you feel that any particular part requires JavaScript functionality like carousal, tabs, accordion, etc. you must clarify its functionality from client Any changes requested by client later can add to your coding efforts.</li>
<li><strong>Custom form elements:</strong> The form elements look different in almost all browsers. These days, designers commonly create custom form designs, so that it matches with design, and look identical in all browsers. But sometimes client want to use default form elements even if they are designed by the designer, because custom designs are sometime confusing for non technical users of website, and are not recommended by usability testers. Discuss it with your client if needed.</li>
<li><strong>Non system fonts:</strong> The designers have a tendency to use stylish fonts, to add beauty and creativity in the design. These designer fonts (commonly known as non system fonts) are not supported by browsers by default. There are many methods available to use these fonts in the webpage for example cufon, sifr, google fonts, @font-face, etc. You should inform your client about these options, and agree on a preferred method of implementing such fonts.</li>
<li><strong>Special effects on text or images:</strong> Sometime designers add special effect on text like drop shadow, glow, etc. Many of these effects can be created with use of CSS3, but it is not completely supported by browsers till date. As an alternate option, you can use images for such text. Discuss it with your client about both options, and agree on a preferred method to implement it.</li>
<li><strong>Anti-aliasing methods applied on text:</strong> Designers normally add anti-aliasing methods like smooth, crisp, etc. on text to make it look nicer in Photoshop. But this effect cannot be achieved by CSS. Discuss it with your client about the same, if required.</li>
<li><strong>Blending mode for layers:</strong> sometimes designers use blending modes like multiply, color burn, etc. to achieve a particular effect in Photoshop. If you need to use the layer with blending mode applied as a transparent image, it is normally not possible to achieve the same effect as shown in Photoshop. Discuss it with your client, if any such layer is found in design.</li>
<li><strong>Rasterized layers:</strong> Sometimes designers rasterize all layers, including text in Photoshop file. In such case you need to check if you can still use the layers comfortably. If not, you should ask your client for a proper PSD file. Even if everything is fine in PSD, it is obviously a tedious task to re-write all content in the PSD. In this case, you can use dummy text, and update the client about it.</li>
<li><strong>Hidden layers:</strong> Sometimes there are hidden layers of layer groups in the PSD files. You should check all layers and find if there are any hidden layers that you need to activate and code. If in doubt, you can obviously ask your client for the same.</li>
<li><strong>Misaligned areas in design:</strong> Sometimes new designers do not take care about the alignment of different sections properly. I have seen that even experienced designers leave some areas misaligned by few pixels, though by mistake. You can use guide lines to check the alignment of sections, and if any misaligned sections are found, you can ask the client about the same, to confirm whether it is intentional or a design mistake.</li>
<li><strong>Require use of transparent images in PNG-24 format:</strong> The transparent PNG images are not supported by IE6 and older browsers. Even with help of IE specific filter available to add this support, many effects cannot be recreated on web page. You should check the design for need of transparent images and possibilities of their implementation, and inform the client accordingly.</li>
<li><strong>CSS3 feature that is not supported in a browser:</strong> As CSS3 is gaining popularity, you still need to use browser specific prefixes to add most of the new properties. Also these new properties are not supported by IE till version 8. If your client wants you to use CSS3, or you suggest him the same to achieve a particular effect, it is a good practice to talk about it with your client.</li>
<li><strong>Non repeatable background image:</strong> Sometimes designers create beautiful effects in page backgrounds, but they forgot to ensure that these backgrounds can be repeated if screen resolution is bigger than the background image created. In this case background images look broken, and it impacts the overall beauty of website. If you find such background used in the design, you must ask your client what to do with the background.</li>
<li><strong>Videos, Google Map, Flash banner, etc.: </strong>Usually there are places created for Videos, Google Map, and Flash Banner etc. in the designs. Clarify with you client whether you need to add any functionality for these, or just use an placeholder image which can be replaced later.</li>
<li><strong>Any other issues:</strong> While checking PSD file, you may find any other issue that is not mentioned in the above list, or you may get confused about how to code a particular part. Make sure about what you are going to ask your client; otherwise you can lose your client’s confidence in you.</li>
</ol>
<p>I hope you found this list useful; you can keep it as a quick checklist with you if required. If you feel I have missed any point in the list, please let me know so that I can update the list, and it will benefit others too.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=_8nK0D-Wxlc:VPQcFgEods0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=_8nK0D-Wxlc:VPQcFgEods0:PGwndh0eds8"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?i=_8nK0D-Wxlc:VPQcFgEods0:PGwndh0eds8" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Xhtml-lab/~4/_8nK0D-Wxlc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.xhtml-lab.com/psd-to-html-conversion-guide/understanding-project-requirements/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.xhtml-lab.com/psd-to-html-conversion-guide/understanding-project-requirements</feedburner:origLink></item>
		<item>
		<title>Understanding the Terminology</title>
		<link>http://feedproxy.google.com/~r/Xhtml-lab/~3/BKdnzhMV8kA/understanding-the-terminology</link>
		<comments>http://www.xhtml-lab.com/psd-to-html-conversion-guide/understanding-the-terminology#comments</comments>
		<pubDate>Wed, 22 Jun 2011 17:28:16 +0000</pubDate>
		<dc:creator>Alok Jain</dc:creator>
				<category><![CDATA[PSD to HTML Conversion Guide]]></category>
		<category><![CDATA[PSD to HTML Conversion]]></category>

		<guid isPermaLink="false">http://www.xhtml-lab.com/?p=389</guid>
		<description><![CDATA[Before you start working on PSD to HTML conversion, let me introduce you to some of the basic terms that you should be familiar with. This article will help you better understand the market standards, and commonly used terms in this domain. Pixel perfect layout Designers loves the layouts they create, and they want web [...]]]></description>
			<content:encoded><![CDATA[<p>Before you start working on PSD to HTML conversion, let me introduce you to some of the basic terms that you should be familiar with.</p>
<p>This article will help you better understand the market standards, and commonly used terms in this domain.<span id="more-389"></span></p>
<h3>Pixel perfect layout</h3>
<p>Designers loves the layouts they create, and they want web pages to match with original design in all web browsers. This process of matching the layouts from PSD with Browsers is commonly known as “pixel perfect layout”. We ensure it by taking a screenshot from browser and overlapping it on original design, with little transparency. In this way, the differences are clearly visible in both original layout and screenshot taken from browser. And the programmer can fix the differences with their coding skills.</p>
<p>Though there are various tools available to help in this process, these tools have many limitations. I would suggest that doing it manually is the best process so far.</p>
<h3>W3C Validation</h3>
<p>World Wide Web Consortium (W3C) is the international standards organization that has the responsibility to create and update many languages related to Web. HTML, XHTML, and CSS are part of W3C’s responsibilities.</p>
<p>They have created validation tools so that one can easily confirm that webpages are coded with proper web standards.</p>
<p>W3C Markup Validation Service: <a href="http://validator.w3.org/">http://validator.w3.org/</a><br />
W3C CSS Validation Service: <a href="http://jigsaw.w3.org/css-validator/">http://jigsaw.w3.org/css-validator/</a></p>
<h3>Page Speed optimization</h3>
<p>How fast a webpage loads into web browser, depends on various factors such as:<br />
- Data transfer speed provided by ISP<br />
- Size (in bytes) of webpage and its related files, like CSS, JS, Images, etc.<br />
- Round trips between server and client to fetch the required data</p>
<p>The first point mentioned in above list cannot obviously be controlled by web developer; however, rest of the points can be ensured by good programming skills.</p>
<p>The technique to reduce the file sizes includes, optimizing images for fast loading, using sprite images with help of CSS (also known as CSS Sprites), using proper inheritance in CSS so that minimum code is used to achieve the desired results, and few others.</p>
<p>All these topics need individual articles and I shall try to cover all these differently, since they deserve their own attention.</p>
<h3>Semantic coding / Search Engine Compatibility</h3>
<p>HTML tags have their own meaning when used in a document. For example, the p tag denotes to a paragraph, and em tag means that text should be emphasized or it has  extra importance. Using proper tags in HTML documents is known as semantic coding.</p>
<p>Semantic coding is a very important factor because Search Engines and Screen Readers understand your page with help of html tags used to wrap the content. For example, searching engines consider the content within opening and closing address tag as an address.</p>
<p>There are some other technologies that add additional details to the content for search engines and screen readers. Some of commonly known technologies are Microformats, and RDFa. Again, I shall try to cover these in separate and independent articles.</p>
<h3>Accessibility</h3>
<p>Web accessibility means that people with disabilities can perceive, understand, navigate, and interact with the Web, and that they can contribute to the Web. Web accessibility also benefits others, including older people with changing abilities due to aging.</p>
<p>W3C has created Web Content Accessibility Guidelines (WCAG) as an initiative to create guidelines for adding accessibility for websites.Many countries understood the need of accessibility and they have created laws related to accessibility for websites.</p>
<p>W3C has also created WAI-ARIA (Web Accessibility Initiative &#8211; Accessible Rich Internet Applications) as guidelines for Rich Internet Applications.</p>
<h3>Print CSS</h3>
<p>Users may want to print your webpage on paper, may be to read it later sometime, or to keep a copy of the content handy with them. For whatever reason, you as a programmer, need to always remember the difference between a web pages and a paper.</p>
<p>Contrary to a webpage, paper has limited width and height. Also, paper has its own limitations such as you cannot add hyperlinks on paper, or you cannot have interactions added using JavaScript.</p>
<p>Fortunately, CSS have some specific properties to address these issues, and also allow writing media specific CSS code. Usually a separate CSS files is created to handle the CSS code related to print media, this file is typically known as “Print CSS”.</p>
<h3>Cross Browser Compatibility</h3>
<p>This is somewhat similar to Pixel Perfect Layout that I have described above. There are many web browsers available to the users for free, and they can choose a browser they like. Also there may be differences in versions of browsers, most commonly known example of version differences is Internet Explorer because unlike other browsers it do not offer an automatic update.</p>
<p>All browser vendors have their own way to implement the CSS properties, so there can be significant differences in how your webpage looks and/or behaves in different browsers.</p>
<p>Cross Browser Compatibility means that developer will ensure that webpage will look and behave identical (almost) in all major web browsers.</p>
<h3>Conclusion</h3>
<p>I have tried to cover the most commonly used terminology and features that are regularly used by UI developers. However there are many more terms and features, some of them are related to above mentioned aspects and few others may be altogether different. I will try to cover some of them in future articles. You can suggest me if you want me to write about any particular term, or if you think i have missed an important term in the above list.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=BKdnzhMV8kA:tXiOaidPuJM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=BKdnzhMV8kA:tXiOaidPuJM:PGwndh0eds8"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?i=BKdnzhMV8kA:tXiOaidPuJM:PGwndh0eds8" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Xhtml-lab/~4/BKdnzhMV8kA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.xhtml-lab.com/psd-to-html-conversion-guide/understanding-the-terminology/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.xhtml-lab.com/psd-to-html-conversion-guide/understanding-the-terminology</feedburner:origLink></item>
		<item>
		<title>Introduction to PSD to HTML Conversion</title>
		<link>http://feedproxy.google.com/~r/Xhtml-lab/~3/fMr4SZSa6YE/introduction-to-psd-to-html-conversion</link>
		<comments>http://www.xhtml-lab.com/psd-to-html-conversion-guide/introduction-to-psd-to-html-conversion#comments</comments>
		<pubDate>Wed, 22 Jun 2011 17:23:57 +0000</pubDate>
		<dc:creator>Alok Jain</dc:creator>
				<category><![CDATA[PSD to HTML Conversion Guide]]></category>
		<category><![CDATA[PSD to HTML Conversion]]></category>

		<guid isPermaLink="false">http://www.xhtml-lab.com/?p=385</guid>
		<description><![CDATA[PSD to HTML conversion is the term used for the procedure of converting design files to HTML and CSS. PSD is file extension for Adobe Photoshop Document. Adobe Photoshop is most commonly used application for designing web pages and web applications, other applications that fall in this category are Adobe Fireworks, and Adobe Illustrator. Use [...]]]></description>
			<content:encoded><![CDATA[<p>PSD to HTML conversion is the term used for the procedure of converting design files to HTML and CSS. PSD is file extension for Adobe Photoshop Document. Adobe Photoshop is most commonly used application for designing web pages and web applications, other applications that fall in this category are Adobe Fireworks, and Adobe Illustrator.</p>
<p>Use of these software’s for web designing depends on the designers’ preferences, however the term PSD to HTML has gained such a popularity that it is used by many corporate houses to address HTML conversion of all file formats.<br />
<span id="more-385"></span></p>
<h3>About PSD to HTML Conversion Guide</h3>
<p>I had originally planned to write a book on the topic, but when I started planning the structure, I realized that this topic is very vast and is evolving fast. Also, I was more excited  to share it with audiences and openly discuss different topics and sub-topics with industry experts, and to learn their views.</p>
<p>So now, I have started compiling my thoughts and knowledge in the form of a series of articles combined under the category named “PSD to HTML Conversion Guide”.</p>
<h3>Table of Contents</h3>
<p>I am working on the articles, and since there are no monetary benefits involved (directly at least), I am only spending my free time here. So the process may be a bit slow, however the objective is to share the knowledge. I will keep updating the table of content below, as soon as I post a new article in the series.</p>
<ol>
<li><a title="Intriduction to PSD to HTML Conversion" href="http://www.xhtml-lab.com/psd-to-html-conversion-guide/introduction-to-psd-to-html-conversion">Introduction to PSD to HTML Conversion</a></li>
<li><a title="Understanding the Terminology" href="http://www.xhtml-lab.com/psd-to-html-conversion-guide/understanding-the-terminology">Understanding the Terminology</a></li>
<li><a title="Understanding Project Requirments" href="http://www.xhtml-lab.com/psd-to-html-conversion-guide/understanding-project-requirements">Understanding Project Requirements</a></li>
</ol>
<h3>Please Share</h3>
<p>If you find these articles useful, please share them with your colleagues friends, and in your community, via social media (such as facebook, LinkedIn, twitter). Also let me know your views, so that I stay encouraged enough to keep writing.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=fMr4SZSa6YE:OL6bJ28ALg0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=fMr4SZSa6YE:OL6bJ28ALg0:PGwndh0eds8"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?i=fMr4SZSa6YE:OL6bJ28ALg0:PGwndh0eds8" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Xhtml-lab/~4/fMr4SZSa6YE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.xhtml-lab.com/psd-to-html-conversion-guide/introduction-to-psd-to-html-conversion/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.xhtml-lab.com/psd-to-html-conversion-guide/introduction-to-psd-to-html-conversion</feedburner:origLink></item>
		<item>
		<title>Color</title>
		<link>http://feedproxy.google.com/~r/Xhtml-lab/~3/WN6l-9OmjOQ/color</link>
		<comments>http://www.xhtml-lab.com/css3-reference/color#comments</comments>
		<pubDate>Wed, 15 Jun 2011 22:10:48 +0000</pubDate>
		<dc:creator>Jaspreet Kaur</dc:creator>
				<category><![CDATA[CSS3 Reference]]></category>

		<guid isPermaLink="false">http://www.xhtml-lab.com/?p=104</guid>
		<description><![CDATA[This property describes the color of text within an element. Values for the property outside the specified ranges will be clipped or truncated to create a valid value. Value Color values can be defined in Hexadecimal, Decimal and keyword (color name) formats, The initial value for color depends on user agent. Example body {color:red;} h1 [...]]]></description>
			<content:encoded><![CDATA[<p>This property describes the color of text within an element. Values for the property outside the specified ranges will be clipped or truncated to create a valid value.</p>
<h4>Value</h4>
<p>Color values can be defined in Hexadecimal, Decimal and keyword (color name) formats, The initial value for color depends on user agent.</p>
<p><span id="more-104"></span></p>
<h4>Example</h4>
<p><code>body {color:red;}<br />
h1 {color:#00ff00;}<br />
p.ex {color:rgb(0,0,255);}<br /></code><br />
<code>&lt;h1&gt;This is heading 1&lt;/h1&gt;<br />
&lt;p&gt;This will an ordinary paragraph. The default text-color for a page is defined in the body selector.&lt;/p&gt;<br />
&lt;p class=&quot;ex&quot;&gt;This will a paragraph with class=&quot;ex&quot;. This text is blue.&lt;/p&gt;<br />
</code></p>
<h4>Technical Specifications</h4>
<table cellspacing="0" cellpadding="0" id="main_border" class="tech_spec">
<tr>
<td class="left_bold">Inherit</td>
<td class="right_normal">yes</td>
</tr>
<tr>
<td class="left_bold">Media</td>
<td class="right_normal">visual</td>
</tr>
<tr>
<td class="left_bold">CSS Support</td>
<td class="right_normal">CSS1</td>
</tr>
<tr>
<td class="left_bold">Values</td>
<td class="right_normal">&lt; color &gt; | inherit</td>
</tr>
<tr>
<td class="left_bold">Initial Value</td>
<td class="right_normal">depends on user agent</td>
</tr>
<tr>
<td class="left_bold">Applies to</td>
<td class="right_normal">all elements</td>
</tr>
<tr>
<td class="left_bold">W3C</td>
<td class="right_normal"><a href="http://www.w3.org/TR/CSS21/colors.html#propdef-color" target="_blank" rel="external">w3c documentation</a></td>
</tr>
</table>
<h4>Browser compatibility chart</h4>
<table cellspacing="0" cellpadding="0" id="main_border" class="browser_support">
<tr class="bdr_inner">
<td><img src="http://cdn.xhtml-lab.com/images/logo_ie.jpg" width="24" height="20" alt="ie"></td>
<td class="full_sup">5.5</td>
<td class="full_sup">6.0</td>
<td class="full_sup">7.0</td>
<td class="full_sup">8.0</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_firefox.jpg" width="24" height="22" alt="ie"></td>
<td class="full_sup">1.0</td>
<td class="full_sup">1.5</td>
<td class="full_sup">2.0</td>
<td class="full_sup">3.0</td>
<td class="full_sup">3.5</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_opera.jpg" width="24" height="23"></td>
<td class="full_sup">9.2</td>
<td class="full_sup">9.5</td>
<td class="full_sup">10.0</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_safari.jpg" width="24" height="23"></td>
<td class="full_sup">1.3</td>
<td class="full_sup">2.0</td>
<td class="full_sup">3.1</td>
<td class="full_sup">4.0</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_chrome.jpg" width="24" height="22"></td>
<td class="full_sup">2.0</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_full.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">Full Support</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_partial.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">Partial Support (Buggy)</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_no.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">No Support</td>
</tr>
</table>
<p>Internet Explorer for Windows versions up to and including 7 don&#8217;t support the value inherit.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=WN6l-9OmjOQ:AXXbsXO-rtI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=WN6l-9OmjOQ:AXXbsXO-rtI:PGwndh0eds8"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?i=WN6l-9OmjOQ:AXXbsXO-rtI:PGwndh0eds8" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Xhtml-lab/~4/WN6l-9OmjOQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.xhtml-lab.com/css3-reference/color/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.xhtml-lab.com/css3-reference/color</feedburner:origLink></item>
		<item>
		<title>Font-weight</title>
		<link>http://feedproxy.google.com/~r/Xhtml-lab/~3/gjSkm3Ge7Pg/font-weight</link>
		<comments>http://www.xhtml-lab.com/css3-reference/font-weight#comments</comments>
		<pubDate>Thu, 09 Jun 2011 21:56:51 +0000</pubDate>
		<dc:creator>Jaspreet Kaur</dc:creator>
				<category><![CDATA[CSS3 Reference]]></category>

		<guid isPermaLink="false">http://www.xhtml-lab.com/?p=285</guid>
		<description><![CDATA[This property describes the font thickness of a section. Its value can be absolute or relative to the parent container thickness if it has one. Child elements inherit the resulting weight, not the keyword value. If the desired font-weight is not available to the browser, the nearest approximation should be used. Value Normal - Same [...]]]></description>
			<content:encoded><![CDATA[<p>This property describes the font thickness of a section. Its value can be absolute or relative to the parent container thickness if it has one. Child elements inherit the resulting weight, not the keyword value. If the desired font-weight is not available to the browser, the nearest approximation should be used.</p>
<p><span id="more-285"></span></p>
<h4>Value</h4>
<ul>
<li><strong>Normal -</strong> Same as &#8217;400&#8242;. </li>
<li><strong>Bold -</strong> Same as &#8217;700&#8242;. </li>
<li><strong>Bolder -</strong> Specifies the next weight that is assigned to a font that is darker than the inherited one. If there is no such weight, it simply results in the next darker numerical value (and the font remains unchanged), unless the inherited value was &#8217;900&#8242;, in which case the resulting weight is also &#8217;900&#8242;.  </li>
<li><strong>Lighter -</strong> Specifies the next weight that is assigned to a font that is lighter than the inherited one. If there is no such weight, it simply results in the next lighter numerical value (and the font remains unchanged), unless the inherited value was &#8217;100&#8242;, in which case the resulting weight is also &#8217;100&#8242;. </li>
<li><strong>100 to 900 -</strong> These values form an ordered sequence, where each number indicates a weight that is at least as dark as its predecessor.  </li>
<li>Inherit </li>
</ul>
<h4>Example</h4>
<p><code> p {font-weight: 900} </code><br />
<code>&lt;p&gt;CSS font-weight&lt;/p&gt;<br /></code></p>
<h4>Technical Specifications</h4>
<table cellspacing="0" cellpadding="0" id="main_border" class="tech_spec">
<tr>
<td class="left_bold">Inherit</td>
<td class="right_normal">yes</td>
</tr>
<tr>
<td class="left_bold">Media</td>
<td class="right_normal">visual</td>
</tr>
<tr>
<td class="left_bold">CSS Support</td>
<td class="right_normal">CSS1</td>
</tr>
<tr>
<td class="left_bold">Values</td>
<td class="right_normal">normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | inherit </td>
</tr>
<tr>
<td class="left_bold">Initial Value</td>
<td class="right_normal">normal</td>
</tr>
<tr>
<td class="left_bold">Applies to</td>
<td class="right_normal">all elements</td>
</tr>
<tr>
<td class="left_bold">W3C</td>
<td class="right_normal"><a href="http://www.w3.org/TR/2008/REC-CSS2-20080411/fonts.html#propdef-font-weight" target="_blank" rel="external">w3c documentation</a></td>
</tr>
</table>
<h4>Browser compatibility chart</h4>
<table cellspacing="0" cellpadding="0" id="main_border" class="browser_support">
<tr class="bdr_inner">
<td><img src="http://cdn.xhtml-lab.com/images/logo_ie.jpg" width="24" height="20" alt="ie"></td>
<td class="full_sup">5.5</td>
<td class="full_sup">6.0</td>
<td class="full_sup">7.0</td>
<td class="full_sup">8.0</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_firefox.jpg" width="24" height="22" alt="ie"></td>
<td class="full_sup">1.0</td>
<td class="full_sup">1.5</td>
<td class="full_sup">2.0</td>
<td class="full_sup">3.0</td>
<td class="full_sup">3.5</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_opera.jpg" width="24" height="23"></td>
<td class="full_sup">9.2</td>
<td class="full_sup">9.5</td>
<td class="full_sup">10.0</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_safari.jpg" width="24" height="23"></td>
<td class="full_sup">1.3</td>
<td class="full_sup">2.0</td>
<td class="full_sup">3.1</td>
<td class="full_sup">4.0</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_chrome.jpg" width="24" height="22"></td>
<td class="full_sup">2.0</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_full.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">Full Support</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_partial.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">Partial Support (Buggy)</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_no.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">No Support</td>
</tr>
</table>
<p><strong>Note:</strong> No versions of Internet Explorer (including IE8) support the property value &#8220;inherit&#8221;.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=gjSkm3Ge7Pg:bN-QRXK8zu4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=gjSkm3Ge7Pg:bN-QRXK8zu4:PGwndh0eds8"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?i=gjSkm3Ge7Pg:bN-QRXK8zu4:PGwndh0eds8" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Xhtml-lab/~4/gjSkm3Ge7Pg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.xhtml-lab.com/css3-reference/font-weight/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.xhtml-lab.com/css3-reference/font-weight</feedburner:origLink></item>
		<item>
		<title>Font-style</title>
		<link>http://feedproxy.google.com/~r/Xhtml-lab/~3/HeVaxy9jJEg/font-style</link>
		<comments>http://www.xhtml-lab.com/css3-reference/font-style#comments</comments>
		<pubDate>Fri, 03 Jun 2011 22:11:48 +0000</pubDate>
		<dc:creator>Jaspreet Kaur</dc:creator>
				<category><![CDATA[CSS3 Reference]]></category>

		<guid isPermaLink="false">http://www.xhtml-lab.com/?p=273</guid>
		<description><![CDATA[This property applies font effects to content in the current container. If the preferred style can not be accommodated, the browser should try to find the best match to the indicated effect. Italic and Oblique properties both result in an ‘italic-like’ appearance, but some font families require the use of the ‘oblique’ value instead of [...]]]></description>
			<content:encoded><![CDATA[<p>This property applies font effects to content in the current container. If the preferred style can not be accommodated, the browser should try to find the best match to the indicated effect.</p>
<p>Italic and Oblique properties both result in an ‘italic-like’ appearance, but some font families require the use of the ‘oblique’ value instead of ‘italic’. </p>
<p><span id="more-273"></span></p>
<h4>Value</h4>
<ul>
<li><strong>Normal -</strong> Specifies a font that is classified as &#8216;normal&#8217; in the UA&#8217;s font database. </li>
<li><strong>Italic -</strong> Specifies a font that is classified as &#8216;oblique&#8217; in the UA&#8217;s font database. Fonts with Oblique, Slanted, or Incline in their names will typically be labeled &#8216;oblique&#8217; in the font database. A font that is labeled &#8216;oblique&#8217; in the UA&#8217;s font database may actually have been generated by electronically slanting a normal font. </li>
<li><strong>Oblique -</strong> Specifies a font that is classified as &#8216;italic&#8217; in the UA&#8217;s font database, or, if that is not available, one labeled &#8216;oblique&#8217;. Fonts with Italic, Cursive, or Kursiv in their names will typically be labeled &#8216;italic&#8217;. </li>
<li>Inherit </li>
</ul>
<h4>Example</h4>
<p><code> .text { font-family: times, serif; font-size:14pt; font-style:italic; } </code><br />
<code>&lt;p class="text"&gt;Sample text formatted with CSS in a separate stylesheet.&lt;/p&gt;<br /></code></p>
<h4>Technical Specifications</h4>
<table cellspacing="0" cellpadding="0" id="main_border" class="tech_spec">
<tr>
<td class="left_bold">Inherit</td>
<td class="right_normal">yes</td>
</tr>
<tr>
<td class="left_bold">Media</td>
<td class="right_normal">visual</td>
</tr>
<tr>
<td class="left_bold">CSS Support</td>
<td class="right_normal">CSS2</td>
</tr>
<tr>
<td class="left_bold">Values</td>
<td class="right_normal">normal | italic | oblique | inherit </td>
</tr>
<tr>
<td class="left_bold">Initial Value</td>
<td class="right_normal">normal</td>
</tr>
<tr>
<td class="left_bold">Applies to</td>
<td class="right_normal">all elements</td>
</tr>
<tr>
<td class="left_bold">W3C</td>
<td class="right_normal"><a href="http://www.w3.org/TR/css3-fonts/#font-style-prop" target="_blank" rel="external">w3c documentation</a></td>
</tr>
</table>
<h4>Browser compatibility chart</h4>
<table cellspacing="0" cellpadding="0" id="main_border" class="browser_support">
<tr class="bdr_inner">
<td><img src="http://cdn.xhtml-lab.com/images/logo_ie.jpg" width="24" height="20" alt="ie"></td>
<td class="full_sup">5.5</td>
<td class="full_sup">6.0</td>
<td class="full_sup">7.0</td>
<td class="full_sup">8.0</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_firefox.jpg" width="24" height="22" alt="ie"></td>
<td class="full_sup">1.0</td>
<td class="full_sup">1.5</td>
<td class="full_sup">2.0</td>
<td class="full_sup">3.0</td>
<td class="full_sup">3.5</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_opera.jpg" width="24" height="23"></td>
<td class="full_sup">9.2</td>
<td class="full_sup">9.5</td>
<td class="full_sup">10.0</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_safari.jpg" width="24" height="23"></td>
<td class="full_sup">1.3</td>
<td class="full_sup">2.0</td>
<td class="full_sup">3.1</td>
<td class="full_sup">4.0</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_chrome.jpg" width="24" height="22"></td>
<td class="full_sup">2.0</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_full.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">Full Support</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_partial.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">Partial Support (Buggy)</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_no.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">No Support</td>
</tr>
</table>
<p><strong>Note:</strong> No versions of Internet Explorer (including IE8) support the property value &#8220;inherit&#8221;.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=HeVaxy9jJEg:Xgw3NinDdlQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=HeVaxy9jJEg:Xgw3NinDdlQ:PGwndh0eds8"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?i=HeVaxy9jJEg:Xgw3NinDdlQ:PGwndh0eds8" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Xhtml-lab/~4/HeVaxy9jJEg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.xhtml-lab.com/css3-reference/font-style/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.xhtml-lab.com/css3-reference/font-style</feedburner:origLink></item>
		<item>
		<title>Create reflection effect using CSS3</title>
		<link>http://feedproxy.google.com/~r/Xhtml-lab/~3/9o9msPKSrd0/create-reflection-effect-using-css3</link>
		<comments>http://www.xhtml-lab.com/css/create-reflection-effect-using-css3#comments</comments>
		<pubDate>Fri, 03 Jun 2011 12:06:32 +0000</pubDate>
		<dc:creator>Jaspreet Kaur</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[Reflection]]></category>

		<guid isPermaLink="false">http://www.xhtml-lab.com/?p=363</guid>
		<description><![CDATA[In a recent project, the client asked me if there is any way to add reflection to images. He wanted this effect because he liked the reflection effect added by designer in the design of his website. But the issue was that he might need to add more images in the future, and he cannot [...]]]></description>
			<content:encoded><![CDATA[<p>In a recent project, the client asked me if there is any way to add reflection to images. He wanted this effect because he liked the reflection effect added by designer in the design of his website. But the issue was that he might need to add more images in the future, and he cannot go back to his designer every time. Of course learning photoshop to do it by himself did not excite him either.</p>
<p>This encouraged me to try and create this effect in CSS, and it could prove to be a lifesaver for all. I tried and came up with a solution, which works in all browsers (Yes it works in IE too, not very nicely however).<span id="more-363"></span></p>
<p>Before we dive into the code, take a look at the <a href="http://www.xhtml-lab.com/demo/reflection/">demo page</a>, to get an idea of what we are going to build here.</p>
<p>Following screenshot is taken from Firefox:<br />
<img class="alignnone" title="Reflection Image" src="http://www.xhtml-lab.com/images/reflection_demo.jpg" alt="" width="514" height="259" /></p>
<h4>Getting started:</h4>
<p>To follow along, you need to create an HTML page, a CSS file, and few images. You can also <a href="http://www.xhtml-lab.com/demo/reflection/CSS3-Reflection-Demo.zip">download the source files</a> of my <a href="http://www.xhtml-lab.com/demo/reflection/">demo page</a>.</p>
<p>I have named my files <code>index.html</code>, <code>style.css</code>, and images are placed in a folder named <code>images</code>.</p>
<h4>HTML Code</h4>
<pre class="brush: xml; title: ; notranslate">
&lt;div class=&quot;image-block&quot;&gt;
   &lt;img src=&quot;images/book1.jpg&quot; alt=&quot;&quot; /&gt;
   &lt;div class=&quot;reflection&quot;&gt;
      &lt;img src=&quot;images/book1.jpg&quot; alt=&quot;&quot; /&gt;
      &lt;div class=&quot;overlay&quot;&gt;&lt;/div&gt;
   &lt;/div&gt;
&lt;/div&gt;
</pre>
<p>Each image requires an extra block which contains a copy of the image for reflection and a div with class <code>"overlay"</code> that we will use for adding fading gradient.</p>
<p>I have grouped both image and div into a container div with class <code>"reflection"</code>. Let’s call this <strong>reflection block</strong> for referring it.</p>
<p>Now both original image and reflection block is wrapped into a div with class <code>"image-block"</code>. Let’s call this <strong>image block</strong>. You can have any numbers of image blocks in your code if required, and that’s why I have used classes for CSS instead if IDs.</p>
<p>Ok, this code is simple enough to understand (I guess), so let&#8217;s move on to CSS.</p>
<h4>CSS Code</h4>
<pre class="brush: css; title: ; notranslate">
.image-block { width:78px; margin:0px 10px; float:left; }
.reflection { position:relative; }
.reflection img {
    -webkit-transform: scaleY(-1);
       -moz-transform: scaleY(-1);
        -ms-transform: scaleY(-1);
         -o-transform: scaleY(-1);
            transform: scaleY(-1);
    filter: flipv; opacity:0.20;
    filter: alpha(opacity='20');
}
.overlay { position:absolute; top:0px; left:0px; width:78px; height:120px;
    background-image: -moz-linear-gradient( center bottom, rgb(255,255,255) 60%, rgba(255,255,255,0) 75%);
    background-image:   -o-linear-gradient( rgba(255,255,255,0) 25%, rgb(255,255,255) 40%);
    background-image:     -webkit-gradient( linear, left bottom, left top, color-stop(0.60, rgb(255,255,255)), color-stop(0.75, rgba(255,255,255,0)));
    filter: progid:DXImageTransform.Microsoft.Gradient( gradientType=0, startColor=0, EndColorStr=#ffffff);
}
</pre>
<p>Let’s go through the code step by step.</p>
<pre class="brush: css; title: ; notranslate"> .image-block { width:78px; margin:0px 10px; float:left; } </pre>
<p>I have added width to image block equal to the width of image, and by doing so, the reflection div will automatically move down, as it will not have space for second image.</p>
<p>Now we have two images as shown in image below<br />
<img class="alignnone" title="Reflection Image" src="http://www.xhtml-lab.com/images/reflection-img1.jpg" alt="" width="78" height="240" /></p>
<p>Next I have added position relative to the reflection block. This will add the positioning coordinates for its child elements with position absolute.</p>
<pre class="brush: css; title: ; notranslate">  .reflection { position:relative; } </pre>
<p>Now we have our stage ready, so let’s begin the magic with CSS3</p>
<pre class="brush: css; title: ; notranslate">
.reflection img {
    -webkit-transform: scaleY(-1);
       -moz-transform: scaleY(-1);
        -ms-transform: scaleY(-1);
         -o-transform: scaleY(-1);
            transform: scaleY(-1);
    filter: flipv;
    opacity:0.20;
    filter: alpha(opacity='20');
}
</pre>
<p>This block of CSS code uses CSS3 and IE filters to flip the image vertically and add transparency to the image.</p>
<p>Because transform property is not completely implemented by all browsers, we need to add browser prefixes to make it working in each browser engine.</p>
<p>We have used <code>transform: scaleY(-1);</code> to simply flip the image vertically. Same effect can be achieved in Internet Explorer by adding <code>filter: flipv;</code></p>
<p>Last 2 lines <code>opacity:0.20;</code> and <code>filter: alpha(opacity='20');</code> adds transparency to the image.</p>
<p>Following image shows, what we have achieved so far:<br />
<img class="alignnone" title="Reflection Image" src="http://www.xhtml-lab.com/images/reflection-img2.jpg" alt="" width="78" height="240" /></p>
<p>Now we only need to add a gradient to add fading effect to the image, we have CSS3 gradients handy for this.</p>
<p>Some facts about CSS3 gradients:</p>
<ul>
<li>CSS3 Gradient property is implemented differently in all browsers.</li>
<li>CSS3 Gradient property is not supported by IE including IE9.</li>
<li>Gradient in CSS is only supported on background images.</li>
</ul>
<pre class="brush: css; title: ; notranslate">
.overlay { position:absolute; top:0px; left:0px; width:78px; height:120px;
    background-image: -moz-linear-gradient( center bottom, rgb(255,255,255) 60%, rgba(255,255,255,0) 75%);
    background-image:   -o-linear-gradient( rgba(255,255,255,0) 25%, rgb(255,255,255) 40%);
    background-image:     -webkit-gradient( linear, left bottom, left top, color-stop(0.60, rgb(255,255,255)), color-stop(0.75, rgba(255,255,255,0)));
    filter: progid:DXImageTransform.Microsoft.Gradient( gradientType=0, startColor=0, EndColorStr=#ffffff);
}
</pre>
<p>Because CSS3 gradient property is only supported on background images, we cannot add it directly on our reflection image.</p>
<p>I have added a div with class <code>"overlay"</code> for this purpose. I have positioned this div above reflection image, with position absolute. And added a width and height equaling to image.</p>
<p>At last I have added CSS3 gradient property to this overlay div, which has added a fading effect to the image.</p>
<p>Following is the end result.<br />
<img class="alignnone" title="Reflection Image" src="http://www.xhtml-lab.com/images/reflection-img3.jpg" alt="" width="78" height="240" /></p>
<p>This works fine in all browsers, except internet explorer.</p>
<p>Microsoft has provided a gradient filter, but it does not provide the ability to add a start and end point for gradient, like CSS3 gradient property.</p>
<p>Following is the result in Internet Explorer after adding the gradient filter.<br />
<img class="alignnone" title="Reflection Image" src="http://www.xhtml-lab.com/images/reflection-img4.jpg" alt="" width="78" height="240" /></p>
<p>As an idea, you can play with heights of reflection div and overlay div to cut the image and improve the effect in Internet Explorer. I am still looking for a better solution for Internet Explorer.</p>
<p>Please let me know if you any suggestions for improvement of this effect, or share the links if you use this effect in your projects.</p>
<p>I’m looking forward to your comments and thank you so much for reading!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=9o9msPKSrd0:1wKBkSXml2Q:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=9o9msPKSrd0:1wKBkSXml2Q:PGwndh0eds8"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?i=9o9msPKSrd0:1wKBkSXml2Q:PGwndh0eds8" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Xhtml-lab/~4/9o9msPKSrd0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.xhtml-lab.com/css/create-reflection-effect-using-css3/feed</wfw:commentRss>
		<slash:comments>16</slash:comments>
		<feedburner:origLink>http://www.xhtml-lab.com/css/create-reflection-effect-using-css3</feedburner:origLink></item>
		<item>
		<title>Text-shadow</title>
		<link>http://feedproxy.google.com/~r/Xhtml-lab/~3/5Ll_vjfiE9k/text-shadow</link>
		<comments>http://www.xhtml-lab.com/css3-reference/text-shadow#comments</comments>
		<pubDate>Fri, 27 May 2011 22:07:50 +0000</pubDate>
		<dc:creator>Jaspreet Kaur</dc:creator>
				<category><![CDATA[CSS3 Reference]]></category>

		<guid isPermaLink="false">http://www.xhtml-lab.com/?p=316</guid>
		<description><![CDATA[The property specifies one or more text shadow effects to be added to the text content of an element. Shadow effects are applied in the order in which they are specified. They don’t increase the size of a box. Note: This feature is NOT new in CSS3; it was originally proposed in CSS2. Value h-shadow [...]]]></description>
			<content:encoded><![CDATA[<p>The property specifies one or more text shadow effects to be added to   the text content of an element. Shadow effects are applied in the order   in which they are specified. They don’t increase the size of a box. </p>
<p><strong>Note:</strong> This feature is NOT new in CSS3; it was originally proposed in CSS2. </p>
<p><span id="more-316"></span></p>
<h4>Value</h4>
<ul>
<li><strong>h-shadow -</strong>Specifies the position of the horizontal shadow. Negative values are   	allowed.</li>
<li><strong>v-shadow -</strong>Specifies the position of the vertical shadow. Negative values are   	allowed.</li>
<li><strong>blur -</strong>The blur distance</li>
<li><strong>color -</strong>The color of the shadow. Look at CSS Color Values for a complete list of possible color values</li>
</ul>
<h4>Example</h4>
<p><code>p { text-shadow: #6374AB 20px -12px 2px; }<br /></code></p>
<h4>Technical Specifications</h4>
<table cellspacing="0" cellpadding="0" id="main_border" class="tech_spec">
<tr>
<td class="left_bold">Inherit</td>
<td class="right_normal">yes</td>
</tr>
<tr>
<td class="left_bold">Media</td>
<td class="right_normal">visual</td>
</tr>
<tr>
<td class="left_bold">CSS Support</td>
<td class="right_normal">CSS3</td>
</tr>
<tr>
<td class="left_bold">Values</td>
<td class="right_normal">none | [&lt;shadow&gt;, ] * &lt;shadow&gt;<br />
where &lt;shadow&gt; is:<br />
[ &lt;color&gt;? &lt;offset-x&gt; &lt;offset-y&gt;   &lt;blur-radius&gt;? | &lt;offset-x&gt; &lt;offset-y&gt;   &lt;blur-radius&gt;? &lt;color&gt;? ]</td>
</tr>
<tr>
<td class="left_bold">Initial Value</td>
<td class="right_normal">none</td>
</tr>
<tr>
<td class="left_bold">Applies to</td>
<td class="right_normal">all elements</td>
</tr>
<tr>
<td class="left_bold">W3C</td>
<td class="right_normal"><a href="http://www.w3.org/TR/2011/WD-css3-text-20110412/#text-shadow" target="_blank" rel="external">w3c documentation</a></td>
</tr>
</table>
<h4>Browser compatibility chart</h4>
<table cellspacing="0" cellpadding="0" id="main_border" class="browser_support">
<tr class="bdr_inner">
<td><img src="http://cdn.xhtml-lab.com/images/logo_ie.jpg" width="24" height="20" alt="ie"></td>
<td class="no_sup">5.5</td>
<td class="no_sup">6.0</td>
<td class="no_sup">7.0</td>
<td class="no_sup">8.0</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_firefox.jpg" width="24" height="22" alt="ie"></td>
<td class="no_sup">1.0</td>
<td class="no_sup">1.5</td>
<td class="no_sup">2.0</td>
<td class="no_sup">3.0</td>
<td class="full_sup">3.5</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_opera.jpg" width="24" height="23"></td>
<td class="no_sup">9.2</td>
<td class="full_sup">9.5</td>
<td class="full_sup">10.0</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_safari.jpg" width="24" height="23"></td>
<td class="partial_sup">1.3</td>
<td class="partial_sup">2.0</td>
<td class="partial_sup">3.1</td>
<td class="partial_sup">4.0</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/logo_chrome.jpg" width="24" height="22"></td>
<td class="partial_sup">2.0</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
<td class="blank">&nbsp;</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_full.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">Full Support</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_partial.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">Partial Support (Buggy)</td>
</tr>
<tr>
<td><img src="http://cdn.xhtml-lab.com/images/support_no.gif" width="11" height="8"></td>
<td colspan="5" class="left_align">No Support</td>
</tr>
</table>
<p><strong>Note:</strong> Safari up to and including version 4 and Chrome versions up to and including 3 don&#8217;t support multiple shadows.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=5Ll_vjfiE9k:TUv6XQ3b5KE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/Xhtml-lab?a=5Ll_vjfiE9k:TUv6XQ3b5KE:PGwndh0eds8"><img src="http://feeds.feedburner.com/~ff/Xhtml-lab?i=5Ll_vjfiE9k:TUv6XQ3b5KE:PGwndh0eds8" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/Xhtml-lab/~4/5Ll_vjfiE9k" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.xhtml-lab.com/css3-reference/text-shadow/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.xhtml-lab.com/css3-reference/text-shadow</feedburner:origLink></item>
	</channel>
</rss><!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Served from: xhtml-lab.com @ 2012-02-14 16:09:30 -->

