well let me chip in
Not too much is needed to make nice css based sites but there are a few essential things that need to be changed and maybe a few hlper thingies
- we need to be able to determine the doctype per portal ( this will make life a lot easier )
- all tags should be outputted as lowercase, so anythign that is generated by dnn as well as the text html module. Its hould leave the original markup alone and not screw it up by converting to uppercase and removing the ""
- a helper would be a dnn:grid that would render a nicely valid html based table instead of what the datagrid outputs. There is no need not to use tables but its bad practive to use tables for design reasons, yous hsould only use tables for tabular display of data.
- and its not that an invalid xhtml page breaks complete layout youc an have invalid module output in a module but the msot important part is that the original skin should validate so no uppercase all tags nicely closed a good doctype etc. Then some validation errors wont break too much
this is the case for floated div based skins, unfortunately negative margin based skins are a bit more strict on this.
- also we shouldt make allthe extra inputed code too complex. If i have a div with an id and a panel and runat = server I want that div tobe the div that gets the content in it, i dont want it to be a placeholder under where a new div is placed that nots needed and thats extra code that doenst need to be in the page at all.
- dnn label and module header : this could be improved uppon byt not rendering it as span but you will ahve option to tell which tag you want example
<dnn label tag="span" or tag ="h3" etc same would also go for the moduletitle , the semantic tag for a title is a H1 2 3 4 etc tag and not a span. So this could be simply added
- core modules : rewrites are needed for certain tables that just generate lists of something like link images faq etc. These should be rendered using nice listed unordered list and then you have much more control in styling it to be horizontal vertical, adding a bit of javascript for the faq list for example.
- idea we have several providers, wouldnt it be a nice idea to intrdoduce a rendersource provider, then we can have speciafic items be rendered as different html code.
- 3rd party modules - If you develop third party modules its a good idea to use repeaters instead of datagrids, this way you and your cleint have full contyrol over the outputted ocde, so you can ahve a list of divs spans or a completely acessible table without too much fuss.
- menuprovider - we need sleeker menus solpart is nice but most newcomers see this as the core version and john did a great job but witha solid navigation provider and menu templates of some sort we could keep the core menu but render all kind of differnet menus without too much hassle. Using css and javascript we can dramatically decrease the javascript code used.
skinning engine: this should mean everything so I want skinobject that i can drop in the head of a page, determine a doctype etc. ( now if you want to have a usercontrol and have it generate code in the header you need to do it in the default.aspx ) and important is also per skin i want to determine which external javascripts it should use. At the moment i have to do this in the newly introduced header tag in dnn admin but what if I ned to do this in a 200 page portal.
A bit off-topic : A lot of the things mentionmed here I will also present in my presenatation at the SDC conference here in the netherlands. So if you are in the neighbourhood drop by. I will be hosting a dnn blackbelt skinning sesson where i will discuss
- use of external javscript libraries in dnn
- special css tricks to extend your skinning
- adding unobtrosive javascript to all nice expand collapse etc effects
+ some other things I have to think about since i will have a whopping 2 hours. Apart from me there will be about 9 sessions from other dnn people
Well back to work now I have a big css dnn news portal i have to finish that will ahve all points mentioned above. Sorry no show and tell ye its stilla secret so far only NIna has seen it yet.
Armand