<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: CSS Child Selector Performance</title>
	<atom:link href="http://ajaxian.com/archives/css-child-selector-performance/feed" rel="self" type="application/rss+xml" />
	<link>http://ajaxian.com/archives/css-child-selector-performance</link>
	<description>Cleaning up the web with Ajax</description>
	<lastBuildDate>Thu, 17 May 2012 07:43:39 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
	<item>
		<title>By: sujith84</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-271524</link>
		<dc:creator>sujith84</dc:creator>
		<pubDate>Sat, 21 Feb 2009 04:40:34 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-271524</guid>
		<description>Great comparison. Very useful. I wonder how well Opera does with child selectors.</description>
		<content:encoded><![CDATA[<p>Great comparison. Very useful. I wonder how well Opera does with child selectors.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aphrodisiac</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-266580</link>
		<dc:creator>Aphrodisiac</dc:creator>
		<pubDate>Mon, 11 Aug 2008 17:12:53 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-266580</guid>
		<description>Thanks. Good article</description>
		<content:encoded><![CDATA[<p>Thanks. Good article</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: seancallan</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263775</link>
		<dc:creator>seancallan</dc:creator>
		<pubDate>Tue, 13 May 2008 16:34:34 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263775</guid>
		<description>No IE8?</description>
		<content:encoded><![CDATA[<p>No IE8?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aimos</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263746</link>
		<dc:creator>Aimos</dc:creator>
		<pubDate>Tue, 13 May 2008 07:23:54 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263746</guid>
		<description>In my case it is mostly more like this:

&quot;table.foo tr td&quot; and the other way would be &quot;td.foo&quot;, because so I can style more tables independent.</description>
		<content:encoded><![CDATA[<p>In my case it is mostly more like this:</p>
<p>&#8220;table.foo tr td&#8221; and the other way would be &#8220;td.foo&#8221;, because so I can style more tables independent.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JeromeLapointe</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263740</link>
		<dc:creator>JeromeLapointe</dc:creator>
		<pubDate>Mon, 12 May 2008 21:40:50 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263740</guid>
		<description>Sorry I meant to say&quot;Iâ€™m realizing now that simple DESCENDANT selectors are not precise at allâ€¦&quot;</description>
		<content:encoded><![CDATA[<p>Sorry I meant to say&#8221;Iâ€™m realizing now that simple DESCENDANT selectors are not precise at allâ€¦&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JeromeLapointe</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263739</link>
		<dc:creator>JeromeLapointe</dc:creator>
		<pubDate>Mon, 12 May 2008 21:39:54 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263739</guid>
		<description>These numbers are already showing me I&#039;m wrong. :)
I&#039;m realizing now that simple child selectors are not precise at all...

My intention was really to tell the parser... &quot;you don&#039;t need to go look at this section of the page, these are not the nodes you&#039;re looking for&quot; ;) ... but I was fooling my self... it doesn&#039;t do that at all, nor could it... this would only have a chance of working if you used the &quot;child&quot; selector and not the &quot;descendant&quot; selector... so I wonder what &quot;table&gt;tr&gt;td.classname&quot; as opposed to &quot;table tr td.classname&quot; would do (and then maybe &quot;body&gt;table&gt;tr&gt;td.classname&quot;)... especially in a large document where there&#039;s only 1 table. Only IE 5.5 and 6 does not support &quot;child selectors&quot;... 

(The article is misleading as it seems to use the term &quot;child selectors&quot; where it should use &quot;descendant selectors&quot;)</description>
		<content:encoded><![CDATA[<p>These numbers are already showing me I&#8217;m wrong. :)<br />
I&#8217;m realizing now that simple child selectors are not precise at all&#8230;</p>
<p>My intention was really to tell the parser&#8230; &#8220;you don&#8217;t need to go look at this section of the page, these are not the nodes you&#8217;re looking for&#8221; ;) &#8230; but I was fooling my self&#8230; it doesn&#8217;t do that at all, nor could it&#8230; this would only have a chance of working if you used the &#8220;child&#8221; selector and not the &#8220;descendant&#8221; selector&#8230; so I wonder what &#8220;table&gt;tr&gt;td.classname&#8221; as opposed to &#8220;table tr td.classname&#8221; would do (and then maybe &#8220;body&gt;table&gt;tr&gt;td.classname&#8221;)&#8230; especially in a large document where there&#8217;s only 1 table. Only IE 5.5 and 6 does not support &#8220;child selectors&#8221;&#8230; </p>
<p>(The article is misleading as it seems to use the term &#8220;child selectors&#8221; where it should use &#8220;descendant selectors&#8221;)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: darkoz</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263738</link>
		<dc:creator>darkoz</dc:creator>
		<pubDate>Mon, 12 May 2008 20:58:22 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263738</guid>
		<description>Jerome, I respectfully disagree with your logic. I would posit that in the case of .className the browser doesn&#039;t waste time on anything without that class name. In the case of the specific &quot;table tr td.className&quot; selector the browser would find all the tables, then all the rows within the tables, then the cells and then go through all the elements in the cells to find .className

Of course I could be wrong :)</description>
		<content:encoded><![CDATA[<p>Jerome, I respectfully disagree with your logic. I would posit that in the case of .className the browser doesn&#8217;t waste time on anything without that class name. In the case of the specific &#8220;table tr td.className&#8221; selector the browser would find all the tables, then all the rows within the tables, then the cells and then go through all the elements in the cells to find .className</p>
<p>Of course I could be wrong :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JeromeLapointe</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263737</link>
		<dc:creator>JeromeLapointe</dc:creator>
		<pubDate>Mon, 12 May 2008 18:51:58 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263737</guid>
		<description>I guess my preconceptions would only work if you have direct descendant selectors...</description>
		<content:encoded><![CDATA[<p>I guess my preconceptions would only work if you have direct descendant selectors&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JeromeLapointe</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263736</link>
		<dc:creator>JeromeLapointe</dc:creator>
		<pubDate>Mon, 12 May 2008 18:49:52 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263736</guid>
		<description>I&#039;m a little flabbergasted.
I&#039;ve always thought that over specifying meant that you CSS node parser did not waste time on nodes that could not fill the criteria and therefor would be faster...

I&#039;d love to see techniques for speeding up stylesheets on large and complicated CSS structures.
It seems to me the only thing CSS optimisers know how to do is get rid of the added specifications... which to me was just aimed at minimizing file weight... but getting rid of something much more precious which was actual knowledge of where the style are to be applied (and where we do not need to look for them.)

Looks like a whole lot of wrong assumptions</description>
		<content:encoded><![CDATA[<p>I&#8217;m a little flabbergasted.<br />
I&#8217;ve always thought that over specifying meant that you CSS node parser did not waste time on nodes that could not fill the criteria and therefor would be faster&#8230;</p>
<p>I&#8217;d love to see techniques for speeding up stylesheets on large and complicated CSS structures.<br />
It seems to me the only thing CSS optimisers know how to do is get rid of the added specifications&#8230; which to me was just aimed at minimizing file weight&#8230; but getting rid of something much more precious which was actual knowledge of where the style are to be applied (and where we do not need to look for them.)</p>
<p>Looks like a whole lot of wrong assumptions</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: PaulIrish</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263734</link>
		<dc:creator>PaulIrish</dc:creator>
		<pubDate>Mon, 12 May 2008 17:33:07 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263734</guid>
		<description>Do note that this if for &lt;b&gt;CSS rendering speeds&lt;/b&gt; only. When using CSS Selectors inside a javascript library, something like &lt;code&gt;td.className&lt;/code&gt; is far faster than &lt;code&gt;.className&lt;/code&gt;.</description>
		<content:encoded><![CDATA[<p>Do note that this if for <b>CSS rendering speeds</b> only. When using CSS Selectors inside a javascript library, something like <code>td.className</code> is far faster than <code>.className</code>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: skypoet</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263733</link>
		<dc:creator>skypoet</dc:creator>
		<pubDate>Mon, 12 May 2008 17:05:02 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263733</guid>
		<description>Great information! Thanks for sharing it. 

I always felt that the more specific the selector rule, the worse the performance.  It&#039;s usually better to have a generic selector rule rather than a specific one.

Of course, that&#039;s all anecdotal.</description>
		<content:encoded><![CDATA[<p>Great information! Thanks for sharing it. </p>
<p>I always felt that the more specific the selector rule, the worse the performance.  It&#8217;s usually better to have a generic selector rule rather than a specific one.</p>
<p>Of course, that&#8217;s all anecdotal.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aimos</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263732</link>
		<dc:creator>Aimos</dc:creator>
		<pubDate>Mon, 12 May 2008 16:53:30 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263732</guid>
		<description>hmm I use the left &quot;style&quot; all day to correctly identify the element I meant. Hmm the opposit would be to create millions of classnames instead. :-/</description>
		<content:encoded><![CDATA[<p>hmm I use the left &#8220;style&#8221; all day to correctly identify the element I meant. Hmm the opposit would be to create millions of classnames instead. :-/</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: MezZzeR</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263731</link>
		<dc:creator>MezZzeR</dc:creator>
		<pubDate>Mon, 12 May 2008 16:20:29 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263731</guid>
		<description>I agree with JonT. &quot;.className&quot; isn&#039;t specific enough and could increase developer ramp-up time if you were to throw a developer on a project he&#039;s never been on before. I&#039;ve seen a lot of stylesheets have 4-6 levels because of shadows + rounded corner modules...Yeah, it can get ugly, but sometimes the client needs crazy rounded corners, gradients, and shadows--and they&#039;re willing to pay for it!

In his test for 20,000 dom nodes he says that it is very extreme--That&#039;s great! I always ask myself, &quot;How far can we push a web application to its limits in terms of user experience, functionality, and performance?&quot; 

Kudos to Jon for a good find.</description>
		<content:encoded><![CDATA[<p>I agree with JonT. &#8220;.className&#8221; isn&#8217;t specific enough and could increase developer ramp-up time if you were to throw a developer on a project he&#8217;s never been on before. I&#8217;ve seen a lot of stylesheets have 4-6 levels because of shadows + rounded corner modules&#8230;Yeah, it can get ugly, but sometimes the client needs crazy rounded corners, gradients, and shadows&#8211;and they&#8217;re willing to pay for it!</p>
<p>In his test for 20,000 dom nodes he says that it is very extreme&#8211;That&#8217;s great! I always ask myself, &#8220;How far can we push a web application to its limits in terms of user experience, functionality, and performance?&#8221; </p>
<p>Kudos to Jon for a good find.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeffrey</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263730</link>
		<dc:creator>Jeffrey</dc:creator>
		<pubDate>Mon, 12 May 2008 16:12:38 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263730</guid>
		<description>That&#039;s right JonT.  But I think the point was that &quot;If that dependency is NOT your case...&quot; then simplifying your selector use could be *slightly* beneficial.  I have to wonder if the actual page rendering engine of a browser goes through the same issues.  If so I have to wonder if simplifying CSS selector use in static HTML pages might help rendering speed.  A little.  Maybe.</description>
		<content:encoded><![CDATA[<p>That&#8217;s right JonT.  But I think the point was that &#8220;If that dependency is NOT your case&#8230;&#8221; then simplifying your selector use could be *slightly* beneficial.  I have to wonder if the actual page rendering engine of a browser goes through the same issues.  If so I have to wonder if simplifying CSS selector use in static HTML pages might help rendering speed.  A little.  Maybe.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JonT</title>
		<link>http://ajaxian.com/archives/css-child-selector-performance/comment-page-1#comment-263729</link>
		<dc:creator>JonT</dc:creator>
		<pubDate>Mon, 12 May 2008 16:04:15 +0000</pubDate>
		<guid isPermaLink="false">http://ajaxian.com/archives/css-child-selector-performance#comment-263729</guid>
		<description>.className may not render correctly compared to table tr td.className if you have 2 different rule sets.  Since the second is more specific, it will take precedence.</description>
		<content:encoded><![CDATA[<p>.className may not render correctly compared to table tr td.className if you have 2 different rule sets.  Since the second is more specific, it will take precedence.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

