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...Skins, Themes, ...Skins, Themes, ...Skin with different panes (e.g. 2-pane + 3-pane layout)Skin with different panes (e.g. 2-pane + 3-pane layout)
Previous
 
Next
New Post
2/11/2009 9:49 PM
 

Usually in graphic and webdesign we are working with a grid - an arrangement of columns, which then can be combined to different layouts like a 2-column-layout and a 3-column-layout, to have more flexibility over the design but on the other hand still creating and consistent and harmonic design.

In DNN as I see so far you have to define these columns as panes. How can I create a skin with different pane layout, let's say I want to have a skin which consists of the following three possible pane layouts:

|......|......|   two content columns

|...|.........|   one left-bar column and a main-column

|.........|...|   one right-bar column and a main-column

 
New Post
2/12/2009 2:16 AM
 

Hi Jens

It is quite easy to do, and I have several very similar skin files (ascx) so modules and layout can very a little between pages.

For example in a Table layout just layout the table as you would anyway and use 'class="contentpane" id="ContentPane" runat="server"' where you would like the panes (renaming them of course). Class is needed as DNN/.NET will give them unique IDs so this way you can control the styling.

Just set the table width, height, rows, columns, cells etc just as you normally would but with the pane details included.

Table Example

<TABLE cellspacing="3" cellpadding="3" width="100%" border="0">
  <TR>
    <TD class="toppane" colspan="3" height="18" id="TopPane" runat="server" valign="top" align="center"></TD>
  </TR>
  <TR valign="top">
    <TD class="leftpane" id="LeftPane" runat="server" valign="top" align="center"></TD>
    <TD class="contentpane" id="ContentPane" runat="server" valign="top" align="center"></TD>
    <TD class="rightpane" id="RightPane" runat="server" valign="top" align="center"></TD>
  </TR>
  <TR>
    <TD class="bottompane" colspan="3" id="BottomPane" runat="server" valign="top" align="center"></TD>
  </TR>
</TABLE>

 

CSS layouts can just use DIV tags for this.

CSS Layout Example

<div  class="content1pane" id="Content1Pane" runat="server"></div>
<div  class="content2pane" id="Content2Pane" runat="server"></div>

 

So... as I use YUI Tabs... all I need in a skin ascx file (apart from importing/referencing the js and css) for this is:

 

<div class="yui-skin-sam"><span class="yuibutton"></span>
<script type="text/javascript">
var myTabs = new YAHOO.widget.TabView("TabDisplay");
</script>

<div id="TabDisplay" class="yui-navset">
    <ul class="yui-nav">
        <li class="selected"><a href="#tab1"><em>Tab 1 Title</em></a></li>
        <li><a href="#tab2"><em>Tab 2 Title</em></a></li>
    </ul>           
    <div class="yui-content">
        <div><div  class="contentpane" id="Tab1Pane" runat="server"></div></div>
        <div><div  class="contentpane" id="Tab2Pane" runat="server"></div></div>
    </div>
</div>
</div>

 

So if you have your general skin, it becomes easy to duplicate this and modify for any pages that require a different layout for modules.

Does that help?

 
New Post
2/12/2009 7:44 AM
 

Hi David,

thank you for your answer and try helping me. Unfortunately I don't understand how you mean it. ;-)

Right now, my skin basically consists of two files:

  • skin.htm - the page skeleton with some named divs for the different panes as well as design elements (like background images etc.)
  • skin.css - is positioning and formatting the divs (and further HTML elements like body etc.) of skin.htm

Where skin.htm has a <div id="content1pane" class="content1pane" runat="server"></div> and a <div id="content2pane" class="content2pane" runat="server"></div> with the skin.css I can for example create a layout where the first pane is a bigger main content pane while the second pane is formatted to be a less big pane for let's say service elements and teaser like this: |........|...| . Defining this in the skin.css I am fixed to that layout, but cannot switch to a layout where for example the first pane is the smaller service elements pane while the second pane is the bigger main content pane like this: |...|........| .

 
New Post
2/12/2009 9:22 AM
 

Ok... I understand what you are meaning (I hope).

To switch, is to use a completely separate skin file.  So your skin.html (I use the .ascx files myself... so you may need to look for this which is much like an html file)... is easiest to be duplicated - so you have SkinWideLeft.ascx (.html) and SkinWideRight.ascx.   Then each of these is adjusted slightly for the different look.

If using just CSS for the layout, you may be best to do something like:

<div id="content1pane" class="WidePane" runat="server"></div>
<div id="content2pane" class="NarrowPane" runat="server"></div>

for the  |........|...|  and

<div id="content1pane" class="NarrowPane" runat="server"></div>
<div id="content2pane" class="WidePane" runat="server"></div>

for the  |...|........|

 

In the DNN Page you would choose which skin to apply.  Doing it this way it runs on a single CSS file - skin.css... or the skin folder can be duplicated and renamed for a different skin.css to be used if you really do want/need a separate skin.css to be used.

Does that make sense for you?

 
New Post
2/23/2009 3:59 PM
 

Hey david thanks for clarifying this.

One question, if i am using various HTML files for the various layout options..is there a certain naming convention i have to follow. And will these automatically get processed when i parse the skin via the HOST > SKINS interface?

 

Thanks for you help, and Jens..sorry if i hijacked your post!

 

Kit

 
Previous
 
Next
HomeHomeUsing DNN Platf...Using DNN Platf...Skins, Themes, ...Skins, Themes, ...Skin with different panes (e.g. 2-pane + 3-pane layout)Skin with different panes (e.g. 2-pane + 3-pane layout)


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