Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeUsing DNN Platf...Using DNN Platf...Administration ...Administration ...CSS Style Sheet Optimisation Core DevelopmentCSS Style Sheet Optimisation Core Development
Previous
 
Next
New Post
7/30/2009 8:07 PM
 

Not sure where to post this, but figured it was/is a configuration issue of sorts.

I would like to put forward the idea of a re-engineering the mass of style sheets and how they are assembled by the engine. DNN has a huge overhead by poorly structured CSS files.

IE8 has a new feature that allows you to view the html/css inheritance (press F12). One things that stands out is how much CSS code is re-executed via reads to default.css, portal.css, skin.css & skinname.css, container.css & conatinername.css (and there's probably more.

Many of the style sheets contain irrelevant information too, for example, default.css references 1000's of byte to declare classes for FileManager, but file manager is rarely used and should just have its own style sheet rather than loading classes that will not be used on every page read.

Also many of the classes re-declare the font and font sizes and many of these re-declarations are unnecessary had the appropriate declarations been made up the CSS chain of inheritance in the first instance. Again, 1000's of bytes per page load could be saved.

Also, if a container has an individual style sheet of the same name and that container is added twice (or more) to the same page the core engine adds the same reference to the same style sheet for each occurrence of the container on the page.

Here's some stats from a fairly average html page

html Byte Count : 10752
css style sheet: 7555

That's over 1/3 of the page in style sheet CSS data.

Here's another that worst

html Byte Count : 24352
css style sheet: 34207

Here, the CSS is larger than the html page which has the content in it !!!!!

Also as a note, the JavaScript was 36515 bytes - I don't know what it's for, but it should not be needed for a plain html page

Ok, that my feedback.

I would be interested in hearing from the core team about doing some DNN optimization on style sheets as there are literally thousands of wasted bytes per page load and there's thousands of posts about how SLOW dnn can be and how bloated the architecture is.

Maybe this would be a quick and fairly easy task to achieve and some performance could be given back relatively quickly.

Peter

PS. It would be good to have an OPTIMIZATION section that deals with performance ideas and issues.

PSS. It would be good to see a lightweight HTML editor included - not every site needs the power of fck and the load times are huge

 
New Post
7/30/2009 8:25 PM
 

though I agree, there is for sure some room for improvement (like FileManager classes, please log this issue into the PUBLIC tracker at support.dotnetnuke.com), I doubt you will get much improvements, due to the fact, that css files are cached by the client browser.

JavaScript might be used for AJAX and JQuery.


Cheers from Germany,
Sebastian Leupold

dnnWerk - The DotNetNuke Experts   German Spoken DotNetNuke User Group

Speed up your DNN Websites with TurboDNN
 
New Post
8/2/2009 8:16 PM
 

I agree css is only a small saving and yes it's cached, but it's still loaded the first time and that means the initial hit is larger than necessary.

Optimisation has to starts with the small things and progressively cut down / cut out what ever can be done.

Consider this for the very first request to a page, where there is no user signed in, therefore there will be no requirement for ANY back office function or "portal" function, so the core development logic could do this

if no User Signed In then just load the minimal css the SKIN.CSS and CONTAINER(S).css - Otherwise load everything else Default.css, skin.css, skinname.css, container.css, containername.css and portal.css

This is a minor logic change and would give a slight optimisation hit. I still don't understand the need for 3 style sheets (default/portal/skin) and I think there needs to be a way to "Switch it OFF" - my skins have all the css needed for my pages including back office functions.

Another great option for performance improvement is view_state management - sure this is an ASP.NEt thing but it can managed in a better way - take a look at what these guys have created as a DNN module plugin - http://www.xepient.com/view_stateServer.aspx - some really cool logic that caches the view state - it can make a huge difference in performance and it's something DNN should/could have as standard.

Again the point is to start looking at the small things and make small improvements in performance before DNN becomes a dinosaur like so many other's before - it's a matter of staying relevant!   And on the WEB page load times and performance is everything. Even with high speed internet access, which i have, page latency on DNN sites is very noticeable especially on sites hosted overseas.

Performance and optimisation should be a major goal of the core team.

 
New Post
8/3/2009 8:38 AM
 

I think this is a good idea.  I'm working on a new site (converting an existing site to DNN) and one major pain has been managing the CSS.  It all works now but when you look at it through firebug you can see all the overrides that happen.  Having a way to turn off all the DNN style sheets would be a good start.

 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Administration ...Administration ...CSS Style Sheet Optimisation Core DevelopmentCSS Style Sheet Optimisation Core Development


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out