My first non-table layout: float not working

JavaScript and client side scripting.

Moderator: General Moderators

Post Reply
User avatar
Luke
The Ninja Space Mod
Posts: 6424
Joined: Fri Aug 05, 2005 1:53 pm
Location: Paradise, CA

My first non-table layout: float not working

Post by Luke »

OK... I have finally decided to try a table-free layout. Completely table free. This is not freakin easy. Here is my html

Code: Select all

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  <title>Paradise Apartments</title>
  <link href="style.css" rel="stylesheet" type="text/css" />
  <base href="http://localhost/paradiseapartments/" />
 </head>
 <body>
  <div id="contact_bar">
   <a href="index.php"><img src="images/home.gif" title="Contact Us" alt="Contact Us" border="0" /></a>
   <a href="contactus.php"><img src="images/contactus.gif" title="Contact Us" alt="Contact Us" border="0" /></a>
   <p>1234 Address Way - Paradise, CA 95969 - (530) 877-1234</p>
  </div>
  <div id="container">
   <div id="left_nav_bar">
    <img src="images/title.gif" alt="Paradise Apartments" id="Paradise Apartments" />
    <ul id="left_nav_menu">
     <li><a href="index.php" id="top"><p>Shadowbrook<br />Apartments</p></a></li>
     <li><a href="index.php"><p>Camino<br />Apartments</p></a></li>
     <li><a href="index.php"><p>Nunnely<br />Properties</p></a></li>
     <li><a href="index.php"><p>Elliot<br />Court</p></a></li>
     <li><a href="index.php"><p>Sawmill<br />Villas</p></a></li>
    </ul>
    <div id="below_menu">
     <p>This is text</p>
     <p>This is some more text</p>
    </div>
   </div>
   <div id="content">
    <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nulla semper. Pellentesque dolor eros, imperdiet ac, semper non, lacinia a, lectus. Aliquam lacinia vehicula arcu. Vestibulum convallis, massa sed tempor imperdiet, ligula sapien tristique velit, mollis laoreet leo quam ac purus. Phasellus quam. Quisque at risus sit amet quam malesuada tincidunt. Phasellus faucibus libero ut orci. Aliquam mattis elit nec pede. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Praesent pretium enim nec diam. Morbi vehicula tellus et diam. Donec pellentesque consectetuer sapien. Curabitur venenatis. Duis felis. Curabitur interdum ipsum id nulla. Suspendisse faucibus pellentesque mauris.</p>
   </div>
  </div>
 </body>
</html>
And here is my CSS file:

Code: Select all

html{
	height: 100%;
}
body{
	font-family: arial, helvetica, sans-serif;
	font-size: 10pt;
	color: black;
	height: 100%;
	margin: 0;
	padding: 0;
}
#container{
	height: 100%;
	margin: 0;
	padding: 0;
}

/* This is the bar on the top of the site */
#contact_bar{
	font-weight: bold;
	color: white;
	background: transparent url(images/top_bar_bg.gif) repeat-x;
	height: 26px;
	vertical-align: middle;
	text-align: right;
	margin: 0;
	padding: 0;
}
#contact_bar p{
	margin: 0;
	padding: 3px ;
}
#contact_bar img{
	padding: 2px 0;
	margin: 0 10px 0 10px;
	float: right;
}

/* This is the menu on the left side of the screen */
#left_nav_bar{
	width: 101px;
	height: 100%;
	float: left;
}
#left_nav_menu{
	margin: 0;
	padding: 0;
}
#left_nav_menu li{
	list-style-type: none;
	margin: 2px;
	padding: 0;
}
#left_nav_menu p{
	padding: 2px;
	margin: 0;
}
#left_nav_menu a{
	color: white;
	font-weight: bold;
	text-decoration: none;
	display: block;
	width: 97px;
	height: 39px;
	background-color: #696;
	border: 2px solid #363;
	text-align: left;
}
#left_nav_menu a:hover{
	color: white;
	font-weight: bold;
	text-decoration: none;
	display: block;
	width: 97px;
	height: 39px;
	background-color: #7A7;
	border: 2px solid #363;
	text-align: left;
}
#left_nav_menu a#top{
	color: white;
	font-weight: bold;
	text-decoration: none;
	display: block;
	width: 101px;
	height: 41px;
	border: none;
	background: transparent url(images/main_menu_top1.gif) no-repeat top left;
	text-align: left;
}
#left_nav_menu a#top:hover{
	color: white;
	font-weight: bold;
	text-decoration: none;
	display: block;
	width: 101px;
	height: 41px;
	border: none;
	background: transparent url(images/main_menu_top2.gif) no-repeat top left;
	text-align: left;
}
#below_menu{
	margin: 2px;
	height: 100%;
	width: 97px;
	background-color: #696;
	border: 2px solid #363;
}

/* This is where content goes*/
#content{
	width: 700px;
	margin: 0;
	padding: 0;
	text-align: left;
}
#content p{
	border: 1px solid black;
	margin-left: 20px;
	z-index: 3;
}
I cannot get the left_nav_menu div to float to the left of the content div. It just wont work. What is wrong?
You can see the site here: http://www.sierratech.us/paradiseapartments
d3ad1ysp0rk
Forum Donator
Posts: 1661
Joined: Mon Oct 20, 2003 8:31 pm
Location: Maine, USA

Post by d3ad1ysp0rk »

Try float:left; in your content style.
User avatar
neophyte
DevNet Resident
Posts: 1537
Joined: Tue Jan 20, 2004 4:58 pm
Location: Minnesota

Post by neophyte »

Okay space goat this works. Tested in IE and in FF.

Code: Select all

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
<style>
html{
margin:0;
padding: 0;
}
body{
background: #cc0000;
margin:0;
padding: 0;
}
#contact_bar{
  height: 26px;
  background-color: #cccccc;
}
#container{
background-color: #666666;
}

#left_nav_bar{
position: absolute;
left:2px;
top:26px;
background-color:#cc0000;
width: 150px;
}

#contentwrap{
	background-color: white;
	margin-left: 170px;
	border: 2px solid #010415;
}
#content{
    top:26px
    margin-left: 170px;
    background-color: #ffffff;
}
#footer{
  background: #123231;
  height: 26px;
}
</style>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>Paradise Apartments</title>

  <link href="Paradise%20Apartments_files/style.css" rel="stylesheet" type="text/css">
  <!-- base href="http://localhost/paradiseapartments/" --></head><body>
  <div id="contact_bar">
  1234 Address Way - Paradise, CA 95969 - (530) 877-1234
  </div>
   <div id="left_nav_bar">

    <ul id="left_nav_menu">
     <li><a href="http://localhost/paradiseapartments/index.php" id="top">Shadowbrook<br>Apartments</a></li>
     <li><a href="http://localhost/paradiseapartments/index.php">Camino<br>Apartments</a></li>
     <li><a href="http://localhost/paradiseapartments/index.php">Nunnely<br>Properties</a></li>
     <li><a href="http://localhost/paradiseapartments/index.php">Elliot<br>Court</a></li>
     <li><a href="http://localhost/paradiseapartments/index.php">Sawmill<br>Villas</a></li>
    </ul>
   </div><div id="contentwrap">
   <div id="content">
    <p>Lorem
ipsum dolor sit amet, consectetuer adipiscing elit. Nulla semper.
Pellentesque dolor eros, imperdiet ac, semper non, lacinia a, lectus.
Aliquam lacinia vehicula arcu. Vestibulum convallis, massa sed tempor
imperdiet, ligula sapien tristique velit, mollis laoreet leo quam ac
purus. Phasellus quam. Quisque at risus sit amet quam malesuada
tincidunt. Phasellus faucibus libero ut orci. Aliquam mattis elit nec
pede. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae; Praesent pretium enim nec diam. Morbi vehicula
tellus et diam. Donec pellentesque consectetuer sapien. Curabitur
venenatis. Duis felis. Curabitur interdum ipsum id nulla. Suspendisse
faucibus pellentesque mauris.</p>
 <p>Lorem
ipsum dolor sit amet, consectetuer adipiscing elit. Nulla semper.
Pellentesque dolor eros, imperdiet ac, semper non, lacinia a, lectus.
Aliquam lacinia vehicula arcu. Vestibulum convallis, massa sed tempor
imperdiet, ligula sapien tristique velit, mollis laoreet leo quam ac
purus. Phasellus quam. Quisque at risus sit amet quam malesuada
tincidunt. Phasellus faucibus libero ut orci. Aliquam mattis elit nec
pede. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae; Praesent pretium enim nec diam. Morbi vehicula
tellus et diam. Donec pellentesque consectetuer sapien. Curabitur
venenatis. Duis felis. Curabitur interdum ipsum id nulla. Suspendisse
faucibus pellentesque mauris.</p>
 <p>Lorem
ipsum dolor sit amet, consectetuer adipiscing elit. Nulla semper.
Pellentesque dolor eros, imperdiet ac, semper non, lacinia a, lectus.
Aliquam lacinia vehicula arcu. Vestibulum convallis, massa sed tempor
imperdiet, ligula sapien tristique velit, mollis laoreet leo quam ac
purus. Phasellus quam. Quisque at risus sit amet quam malesuada
tincidunt. Phasellus faucibus libero ut orci. Aliquam mattis elit nec
pede. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae; Praesent pretium enim nec diam. Morbi vehicula
tellus et diam. Donec pellentesque consectetuer sapien. Curabitur
venenatis. Duis felis. Curabitur interdum ipsum id nulla. Suspendisse
faucibus pellentesque mauris.</p>
 <p>Lorem
ipsum dolor sit amet, consectetuer adipiscing elit. Nulla semper.
Pellentesque dolor eros, imperdiet ac, semper non, lacinia a, lectus.
Aliquam lacinia vehicula arcu. Vestibulum convallis, massa sed tempor
imperdiet, ligula sapien tristique velit, mollis laoreet leo quam ac
purus. Phasellus quam. Quisque at risus sit amet quam malesuada
tincidunt. Phasellus faucibus libero ut orci. Aliquam mattis elit nec
pede. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae; Praesent pretium enim nec diam. Morbi vehicula
tellus et diam. Donec pellentesque consectetuer sapien. Curabitur
venenatis. Duis felis. Curabitur interdum ipsum id nulla. Suspendisse
faucibus pellentesque mauris.</p>
 <p>Lorem
ipsum dolor sit amet, consectetuer adipiscing elit. Nulla semper.
Pellentesque dolor eros, imperdiet ac, semper non, lacinia a, lectus.
Aliquam lacinia vehicula arcu. Vestibulum convallis, massa sed tempor
imperdiet, ligula sapien tristique velit, mollis laoreet leo quam ac
purus. Phasellus quam. Quisque at risus sit amet quam malesuada
tincidunt. Phasellus faucibus libero ut orci. Aliquam mattis elit nec
pede. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae; Praesent pretium enim nec diam. Morbi vehicula
tellus et diam. Donec pellentesque consectetuer sapien. Curabitur
venenatis. Duis felis. Curabitur interdum ipsum id nulla. Suspendisse
faucibus pellentesque mauris.</p>
 <p>Lorem
ipsum dolor sit amet, consectetuer adipiscing elit. Nulla semper.
Pellentesque dolor eros, imperdiet ac, semper non, lacinia a, lectus.
Aliquam lacinia vehicula arcu. Vestibulum convallis, massa sed tempor
imperdiet, ligula sapien tristique velit, mollis laoreet leo quam ac
purus. Phasellus quam. Quisque at risus sit amet quam malesuada
tincidunt. Phasellus faucibus libero ut orci. Aliquam mattis elit nec
pede. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae; Praesent pretium enim nec diam. Morbi vehicula
tellus et diam. Donec pellentesque consectetuer sapien. Curabitur
venenatis. Duis felis. Curabitur interdum ipsum id nulla. Suspendisse
faucibus pellentesque mauris.</p>
 <p>Lorem
ipsum dolor sit amet, consectetuer adipiscing elit. Nulla semper.
Pellentesque dolor eros, imperdiet ac, semper non, lacinia a, lectus.
Aliquam lacinia vehicula arcu. Vestibulum convallis, massa sed tempor
imperdiet, ligula sapien tristique velit, mollis laoreet leo quam ac
purus. Phasellus quam. Quisque at risus sit amet quam malesuada
tincidunt. Phasellus faucibus libero ut orci. Aliquam mattis elit nec
pede. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae; Praesent pretium enim nec diam. Morbi vehicula
tellus et diam. Donec pellentesque consectetuer sapien. Curabitur
venenatis. Duis felis. Curabitur interdum ipsum id nulla. Suspendisse
faucibus pellentesque mauris.</p>
 <p>Lorem
ipsum dolor sit amet, consectetuer adipiscing elit. Nulla semper.
Pellentesque dolor eros, imperdiet ac, semper non, lacinia a, lectus.
Aliquam lacinia vehicula arcu. Vestibulum convallis, massa sed tempor
imperdiet, ligula sapien tristique velit, mollis laoreet leo quam ac
purus. Phasellus quam. Quisque at risus sit amet quam malesuada
tincidunt. Phasellus faucibus libero ut orci. Aliquam mattis elit nec
pede. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae; Praesent pretium enim nec diam. Morbi vehicula
tellus et diam. Donec pellentesque consectetuer sapien. Curabitur
venenatis. Duis felis. Curabitur interdum ipsum id nulla. Suspendisse
faucibus pellentesque mauris.</p>
 <p>Lorem
ipsum dolor sit amet, consectetuer adipiscing elit. Nulla semper.
Pellentesque dolor eros, imperdiet ac, semper non, lacinia a, lectus.
Aliquam lacinia vehicula arcu. Vestibulum convallis, massa sed tempor
imperdiet, ligula sapien tristique velit, mollis laoreet leo quam ac
purus. Phasellus quam. Quisque at risus sit amet quam malesuada
tincidunt. Phasellus faucibus libero ut orci. Aliquam mattis elit nec
pede. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae; Praesent pretium enim nec diam. Morbi vehicula
tellus et diam. Donec pellentesque consectetuer sapien. Curabitur
venenatis. Duis felis. Curabitur interdum ipsum id nulla. Suspendisse
faucibus pellentesque mauris.</p>
   </div></div>
   <div id="footer"></div>
 </body></html>
That's it.

CSS layout with full width fluid banner fixed left fluid right and full width footer.

Add your stuff back slowly. I ripped it out to solve the problem.

Curiously enough I used much the same design for sunbeamers (see my footer);

Hope that helps.
User avatar
Luke
The Ninja Space Mod
Posts: 6424
Joined: Fri Aug 05, 2005 1:53 pm
Location: Paradise, CA

Post by Luke »

thank you very much, but I thought absolute positioning was a no-no...?

anyway...
I got it working thanks to neophyte, but now i have another problem... how come the page is so long? You can scroll down much further than you really need to be able to.
User avatar
Chris Corbyn
Breakbeat Nuttzer
Posts: 13098
Joined: Wed Mar 24, 2004 7:57 am
Location: Melbourne, Australia

Post by Chris Corbyn »

If I've said it once I've said it 100 times....

That layout is a fluid layout with a fixed-width column down the left hand side... it's a job for negative margins:

http://alistapart.com/articles/negativemargins

Example (minus the background image to create faux-pas if neccessary):

Code: Select all

<!-- OUTER CONTAINER -->
<div style="width: 100%;">
    <!-- DIV WITH NEGATIVE MARGIN (SOMETHING CAN SIT IN THAT MARGIN) -->
    <div style="width: 100%; margin-left: -120px; float: right;">
        <!-- CONTENT (MARGIN USED TO PUSH IT OUT OF THE NEGATIVE MARGIN -->
        <div style="margin-left: 120px;">
            The main content here
        </div>
    </div>
    <!-- THE NAVIGATION (FLOATS BACK INTO THE MARGIN)  -->
    <div style="float: left; width: 120px;">
        <ul>
            <li>Item 1</li>
            <li>Item 2</li>
        </ul>
    </div>
</div>
Absolute positioning isn't a no-no as you put it. But it's something you should avoid where possible if there are other ways to acheive the same layout ;)
User avatar
neophyte
DevNet Resident
Posts: 1537
Joined: Tue Jan 20, 2004 4:58 pm
Location: Minnesota

Post by neophyte »

Thanks for the post d' That's very useful to know.
User avatar
Luke
The Ninja Space Mod
Posts: 6424
Joined: Fri Aug 05, 2005 1:53 pm
Location: Paradise, CA

Post by Luke »

I read the article... having a hard time grasping it. I will play around with that and see what happens.
User avatar
neophyte
DevNet Resident
Posts: 1537
Joined: Tue Jan 20, 2004 4:58 pm
Location: Minnesota

Post by neophyte »

You know the more I play with css the more I realize how simple it is... It's just getting over the learning curve. I'm just so accustomed to tables! It's hard to move away from them. Styles with css are one thing but layout is much more difficult. But the more sites the I build with CSS the less I want to build anything with tables.
User avatar
neophyte
DevNet Resident
Posts: 1537
Joined: Tue Jan 20, 2004 4:58 pm
Location: Minnesota

Post by neophyte »

For the ninja:

Code: Select all

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
 <html xmlns="http://www.w3.org/1999/xhtml"><head> 
 <style> 
 #header {
  background: #d7dabd;
}
#container {
  width: 100%;
  float: right;
  margin-right: -200px;
}
#sidebar {
  width: 200px;
  float: left;
}
#footer {
  background: #d7dabd;
  clear: both; 
}
 </style> 
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>Paradise Apartments</title> 
 
   <link href="Paradise%20Apartments_files/style.css" rel="stylesheet" type="text/css"> 
   <!-- base href="http://localhost/paradiseapartments/" --></head><body> 
  <div id="header">header</div>

<div id="container">
  <h1>content</h1>
  <p>Lorem ipsum dolor sit amet,
  consectetuer adipiscing elit.
  Phasellus varius eleifend.</p>
  <p class="last">Donec euismod.
  Praesent mauris mi, adipiscing non,
  mollis eget, adipiscing ac, erat.
  Integer nonummy mauris sit.</p>
</div>

<div id="sidebar">
  <h1>sidebar</h1>
  <ul>
    <li>link one</li>
    <li>link two</li>
  </ul>
</div>

<div id="footer">footer</div>
  </body></html>
User avatar
neophyte
DevNet Resident
Posts: 1537
Joined: Tue Jan 20, 2004 4:58 pm
Location: Minnesota

Post by neophyte »

Cool same layout -- no negative margin.

http://css.maxdesign.com.au/floatutoria ... al0813.htm
User avatar
Moocat
Forum Contributor
Posts: 143
Joined: Wed Oct 12, 2005 9:28 am
Location: USA

Post by Moocat »

You use a lot of "height: 100%" which I find almost everytime doesn't do what you want it to do or will screw up your page later on. I also use a containing element to encompass the whole page instead of relying on "html" (which I never use) and "body" as tags themselves. Also note that IE will use "position: static" as it's default positioning element as opposed to "position: relative" which is used in every other browser. This can especially cause problems when trying to overlap divs using a negative margin.

If you haven't done so already, I suggest drawing out your layout beforehand using the largest "blocks" of space that you'll be using (usually only up to 3, if you have more there's a problem). Then break down those blocks internally and draw what each will contain in dotted lines. When you go to do your code, add SOLID borders around main blocks so you know where your boxes are and then add DASHED borders to your internal elements. This helps me greatly when positioning elements and sizing divs, hopefully it will help you too :)
User avatar
wtf
Forum Contributor
Posts: 331
Joined: Thu Nov 03, 2005 5:27 pm

Post by wtf »

usually only up to 3, if you have more there's a problem
Could you elaborate on this a bit? I'm not sure what you mean.
User avatar
Chris Corbyn
Breakbeat Nuttzer
Posts: 13098
Joined: Wed Mar 24, 2004 7:57 am
Location: Melbourne, Australia

Post by Chris Corbyn »

I tend to give my div's primary colors for the background wilst I organise/structure a layout.

~wtf I think ~Moocat was suggesting that if you're planning to use a tonne of nested div's to acheive a result then you've probably gone down the wrong route with the layout :) Not 100% though.
User avatar
Moocat
Forum Contributor
Posts: 143
Joined: Wed Oct 12, 2005 9:28 am
Location: USA

Post by Moocat »

wtf wrote:Could you elaborate on this a bit? I'm not sure what you mean.
This site: http://www.alvit.de/handbook/

has too many "blocks". Although reasonably well done, a page like this would never make it in the "real" world of users who make site judgements in less than a second. Two column layouts, like http://digg.com/ generally work better for the populace overall. Users still want simplistic interfaces and loading them up with too much info or too many choices often frustrates users on an internal, and sometimes public noise level. Three column layouts seem to be the "future" of CSS layouts with the 3rd column being less of an informational column and more of a side note or just a small tidbit. What I've read and what I've seen leads me to these conclusions (which are also just the opinions of a web programmer):

1) One column layouts are too simple, users are smarter now

2) Two and three column layouts are the "sweet spot", not too much information, not too little (2 column are slowly being phased out though)

3) More than 3+ columns leads to "information overload" and the end user is not likely to appreciate your site much (exceptions are made for very specific sites like browser based games like Quantum Star, Merchant Empires, etc.)

4) Users want the same layout on every single page, don't have one type of layout on the first page where navigation is on the left and then switch it to the top or any other similar layout shifts

5) Color matching can make or break your sites, bad colors can cost you users, good ones can gain you more (I find black is only good for borders and text nowadays)

6) Speed is hot hot hot (like hot tea), the faster, the better, the more satisfied the user, the more satisfied your boss, the more money in your pocket

7) Users don't like being told what to do, most people are smart enough to click something that's underlined for them, "Click Here" is being replaced by a more intuitive "Download Now"

8) Nothing turns users off like having to register for ANY content. Pick out some content you think would be good "feed" for a user...then double it. You have to pull them in before you hook them up and nothing pulls like good content.

9) Cross-browser compatibility is important, however, if you design for IE, you'll still hit the majority of your market. As much as you'd like to, don't insult your user by telling them their browser is "teh sux" because it's IE, although a slight nudge isn't too bad.

10) Users/clients are not always right, especially when it comes to design and layout. Whatever you do, do NOT let the user design a layout unless you are absolutely sure they know what the hell they're talking about. Making multiple prototypes is godlike to them, although they are almost always "hooked" on the first thing they see for some reason. Show your best stuff off first and be sure not to mention (even though it tends to almost always slip out) that you can make "minor" changes, because "minor" changes to them could include an entire rework of your page. Show them what they want, ask for content ONLY (if you can). The only two reasons you should fit the customer's wants for page layout is for content compatibility or if your boss tells you to. Otherwise argue them into your layout schemes...unless you suck :)

Well that's about it, hope it helps, although only one or two may apply to you they seem to fit well "overall". Always remember, let the customer think they're right, then tell them what they want to hear that will make them think in favor of your design :)
User avatar
wtf
Forum Contributor
Posts: 331
Joined: Thu Nov 03, 2005 5:27 pm

Post by wtf »

...usually only up to 3...
OK... so you were refering to layout columns.

Quite extensive reply. I also couldn't agree more on what you wrote above.


Thanks!!!
Post Reply