CDN isn't a bad option. The thing is, when the HTML is downloaded, the browser needs to first parse the HTML, then parse the CSS before it can render anything to the screen. If it, in that space, also has to do another DNS lookup and then download a massive block of CSS (all will be parsed of that CSS, even the selectors that won't be used) then that will delay the rendering and thus it won't paint anything on the screen until that's done.
Granted, CDNs are quicker to download from thanks to the latency. However, the potential extra DNS lookup can be quite a severe punishment.
Comment
CDN isn't a bad option. The thing is, when the HTML is downloaded, the browser needs to first parse the HTML, then parse the CSS before it can render anything to the screen. If it, in that space, also has to do another DNS lookup and then download a massive block of CSS (all will be parsed of that CSS, even the selectors that won't be used) then that will delay the rendering and thus it won't paint anything on the screen until that's done.
Granted, CDNs are quicker to download from thanks to the latency. However, the potential extra DNS lookup can be quite a severe punishment.
Check out this post about DNS lookups http://www.peterbe.com/plog/slow-dns
What this all means is that ideally there will be a quicker; from the time you enter the URL until your eyes have something to feast on.
Parent comment
I like using CDNs, what's wrong with that option? There's a great one for bootstrap. http://www.bootstrapcdn.com/