CSS - How To Make Beautiful Blocks/ Tables Like This?
hi, im not sure if im posting in the right page but after viewing the page source, i think its the best way to post it right here
i just want to know what should i learn to make such beautiful block/tables whatever call it just like at kathymarks dot com? any suggestion what should i learn from? links? thanks! on the side note, how about the tables/blocks on deviant art? thanks for the replies! Similar TutorialsSometime between Thursday evening and Friday afternoon someone snuck into my home and tampered with my style sheets! Or...perhaps I tweaked something and can't remember what the heck it was. At any rate, my Suckerfish CSS menus (thank you for the suggestion last week, Kravvitz) were working out very well in FF, IE and Opera.......until today. Now IE7's display is nothing short of a travesty. I do not remember monkeying with my menus.css style sheet, and I don't think anything I can do to my siteWide.css sheet can interfere...so of course it probably can and did. If you have time to look, I would appreciate your trying the menus in different browsers and suggesting why they're behaving the way they are in IE (and I'm assuming they'll work great in other browsers). I know I won't sleep a wink tonight till this caper is solved. My test page URL is http://stallinswebdesign.com/vs/index.php Oh - few of the links actually go anywhere. I'm hoping you can just move your cursor over the menus and tell me why they might be all splayed out in IE, and why many of the two-word links are scrunched onto two lines. It's almost as if my margin or padding values are taking a vacation...and we can't have that. Here's my two css files. Thank you so much for your time. Curtis menus.css (mostly from HTML Dog) Code: #navContainer { z-index:3; width:51em; text-align:left; border:0px solid #bedfc4; margin:0 auto; padding-bottom:2em;} #nav, #nav ul { font-size:1.0em; float:left; width:51em; list-style:none; line-height:1; background:#fffded; font-weight:bold; padding:0; border:solid green; border-width:1px 0; margin:0 0 0 0;} #nav a { display:block; width:10em; w\idth:6em; color:green; text-decoration:none; padding:0.25em 2em;} #nav a.topDrop { background:url(../images/rightArrowYellow.gif) center right no-repeat;} #nav li { float:left; padding:0; width:10em;} #nav li ul { position:absolute; left:-999em; height:auto; width:14.4em; w\idth:13.9em; font-weight:normal; border-width:0.1em; margin:0;} #nav li li { padding-right:1em; width:13em} #nav li ul a { width:13em; w\idth:9em;} #nav li ul ul { margin:-1.75em 0 0 14em;} #nav li:hover ul ul, #nav li:hover ul ul ul, #nav li.sfhover ul ul, #nav li.sfhover ul ul ul { left:-999em;} #nav li:hover ul, #nav li li:hover ul, #nav li li li:hover ul, #nav li.sfhover ul, #nav li li.sfhover ul, #nav li li li.sfhover ul { left:auto;} #nav li:hover, #nav li.sfhover { background:#d4e7b2;} siteWide.css styles everything else: Code: body { background:#fffded url(../images/bg_grad.jpg) repeat-x top;} #wholePage { font: 100%/1.2 trebuchet, arial, helvetica, serif; width:96%; margin:0px auto; color:#333;} a:link { color:blue; text-decoration:underline;} a:visited { color:blue;} a:hover { color:#ab003c; text-decoration:none;} a:active { color:#ab003c; text-decoration:none;} #topTitle { border-top: 4px solid green; padding:0.5em; color:green; letter-spacing:0.3em; margin-bottom:1em;} #topTitle h1 { padding:0; margin:0; text-align:center;} #contentLeft { float:left; width:180px; margin:0; padding:0 1em; font-size:12px; border-right:1px solid #ddd;} #contentLeft p, #contentRight p { padding-bottom:0em; border-top:0; background-color:#d5e9d7;} #contentMain { margin-left:200px; /* border-left:1px solid #ccc; */ margin-right:200px; /* border-right:1px solid #ccc; */ padding: 0 1em;} #contentMain p { padding-bottom:1.5em; border-bottom:1px #ccc solid; margin-top:1em;} .presIntro { font-weight:bold; color:#555;} .readMore { font-size:12px;} /* might get rid of these three */ #middleLeft { float:left; width:44%;} #middleRight { float:right; width:44%;} .centerFloatUp { float:left; width:100%;} #contentRight { background: url(../images/bg_logoRt.png) repeat-y fixed top right; float:right; width:180px; margin:0; padding:0 1em; font-size:12px; border-left:1px solid #ddd;} #footer { clear:both; margin:0; padding:0.5em; color:#333; border-top:2px solid green;} ul#W3Cgifs { list-style-type:none; margin:0; padding:0; padding:0.5em 0;} ul#W3Cgifs .left { float:left;} ul#W3Cgifs .center { /* this is the hits counter */ float:left; margin-left:9em; } ul#W3Cgifs .right { float:right;} .strong {font-weight:bold;} .center {text-align:center;} .picCap { /* this is the eagle/fox picture */ margin:0 0 10px 10px; } div.picCap img { border-top:2px solid #555; border-right:1px solid #999; border-bottom:1px solid #999; border-left:2px solid #555;} .floatRight { /* initially for Cinderella img on right side */ float:right; margin:4px; border:0;} /* the following three are for rounding corners in contentLeft and contentRight */ .leftRightFeature { background: #d5e9d7 url(../images/roundBottom180.gif) no-repeat bottom left; width:180px; padding:0 0 10px; margin:1em 0em;} .leftRightFeature h3 { background: url(../images/roundTop180.gif) no-repeat; padding:10px 10px 0; font-size: 16px;; font-weight:bold; color:#2d73b9; line-height:1; margin:0; text-align:center;} .leftRightFeature p { padding:10px 10px 0; color:#1b220f; line-height:1.3; margin:0; border-bottom:0px; border-top:0} .leftRightFeature ul { list-style-type: none; padding:10px; margin:0;} .leftRightFeature ul.disc { list-style-type: disc; padding-left:20px;} .leftRightFeature form { /* for the Google Search field */ margin-top:0; padding-top:0;} /* these for the Cinderella countdown timer on the Cinder page */ table.Timer { border-spacing:0} td.Timer { border:2px groove black; padding:1px; background-color:#ccffcc;} th.Timer { border:2px groove black; padding:1px; background-color:#ffffcc; font-size:12px; color:green;} hello everyone, i've been pulling my hairs on this one. i have a layout designed and i want to produce the html and CSS. what i wish is that the layout fills the screen by stretching towards the right and bottom, according to what's inside the "content" area. my problem is having the left side stretch vertically as needed to display the content , so that it joins the footer. the structure of the page blocks would be: (see attached img) any idea how to do this ? please help, it's urgent !! thanks a great lot, alx Have a look at the menu at the top of this page. While it does use some CSS, it doesn't appear to use it for spacing. (In point of fact, this page uses tables quite a bit, though not for that menu). Anyway, if I want to create a top menu (rather than a side menu, perhaps), then how do I evenly space the menu choices across the div (area) that I create for it? Something like: Home Directions Photos Login FAQs About Us but nice and even-spaced across the area designated for it. Naturally, I could do the math and use {position:absolute; left:16%} for each item, but this is a bad substitution for a quick, effective, and not so dirty table. Is there a way to set something up once in CSS that applies to all words or <a>'s or something, within a <div>? Thanks. Hi, I'm a bit confused with the relative/absolute positioning issue. I thought that relative would carry the normal flow of things, but as you can see with the code below, all of the DIV items that should follow each other are overlapping even though positioning is set to relative. Can anyone help me out as to what I am doing wrong? Thanx <html> <head> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style> body { padding : 0; margin-top:10px; margin-bottom:0px; background:#FFF; height: 0px; width: 0px; margin-right: 0px; margin-left: 0px; } .titleBlue{ font-family: Arial; font-size:18px; color : #003896; } .darkBlue{ font-family: Verdena; font-size:11px; color : #003896; font-weight : bold; } .smallStyle{ font-family: verdana; font-size:10px; color : #000000; text-decoration : none; } #content{ position : relative; left:50%; width:730px; margin-left:-365px; } #hrColumn{ position : absolute; top : 0; left : 0; width : 149px; border-right: 1px dotted #5D89D1; margin-right : 5px; } #hrLogo{ position : relative; top : 0; margin-bottom:5px; } #linkSection{ position : relative; margin-bottom:10px; } #columnLink{ position : relative; } #linkArrowItem{ position : absolute; top : 3px; } #linkItem{ position : absolute; left : 12px; } </style> </head> <body> <div id="content"> <div id="hrColumn"> <div id="hrLogo" class="titleBlue">Blablabla</div> <div id="linkSection" class="smallStyle"> <div id="columnLink"> <div id="linkArrowItem"><img src="arrowLogo.jpg" width="8" height="7" border="0" /></div> <div id="linkItem"><a href="#">Programs and Forms</a></div> </div> <div id="columnLink"> <div id="linkArrowItem"><img src="arrowLogo.jpg" width="8" height="7" border="0" /></div> <div id="linkItem"><a href="#">Development and Training</a></div> </div> <div id="columnLink" class="smallStyle"> <div id="linkArrowItem"><img src="arrowLogo.jpg" width="8" height="7" border="0" /></div> <div id="linkItem"><a href="#">Careers</a></div> </div> <div id="columnLink" class="smallStyle"> <div id="linkArrowItem"><img src="arrowLogo.jpg" width="8" height="7" border="0" /></div> <div id="linkItem"><a href="#">More...</a></div> </div> </div> </div> </div> </body> </html> Code: a { display:blocks; width:100px; height:20px; border:1px solid #000000; background:#CCCCCC; } This code works great in Internet Explorer, but Firefox doesn't seem to like the width and height settings. Does anyone know a way to do this in firefox? Thanks in advance! I am using "Stylin' With CSS" book to learn how to do my website layout and I need to put some images on my website. I just need something simple... I have an image showing what I am trying to do but I can't post the url.... I basically just need to create a horizontal row of n images, n being 1 to 5. The images are very close in dimensions, but not exactly the same. How can I do this... Thanks, CD I have a multi-column layout. The "main" column has text within <p> tags defined thusly:
Code: #main p { font-family: Helvetica, Verdana, Geneva, Arial, sans-serif; font-size: 12px; line-height: 1.7em; padding:0 10px; } Within that main columns are some <div> blocks that are arranged in a row at a certain place, define like this: Code: .mid_nav { float:left; width:110px; margin:0px 10px 8px; background:url("./images/pic_nav_bg.gif"); background-repeat: repeat-y; } I would like to define different qualities to the <p> tags within these <div> blocks, but the original #main p definitions seem to over-ride whatever I try. Incidently, the reason I've defined the font-size in pixels is I need uniformity between IE and FF. Any suggestions? I am creating a top nav with links that are turned into floated blocks. I have 2 issues that I can't seem to figure out. 1. How do I keep the elements from wrapping? 2. How do I make the set of floated items centered? Here is what I have so far (see code below). Because the items are floated to the left, they stay anchored to left and aren't centered. I tried giving the nav div a width. That did allow it to be centered, but I don't know what the exact width of the combined link blocks would be, so if it is too short, it wraps, and if it is too wide it doesn't center evenly. Code: #nav{ text-align:center; padding-top:24px; } #nav a{ display:block; float:left; padding:13px; text-transform:uppercase; color:#9BA047; background:#FFF; line-height:1em; text-decoration:none; font-weight:bold; } #nav a:hover{ color:#85231C; } #nav a#logo{ float:left; padding:0px; } <div align="center"> <div id="nav"> <a href="/" id="logo"><img src="images/logo.gif" alt="Associated Group" border="0" /></a><a href="/about-us.html">About Us</a><a href="/exterior.html">Exterior</a><a href="/interior.html">Interior</a><a href="/display.html">Display</a><a href="/employment.html">Employment</a><a href="/location.html">Location</a><a href="/contact.html">Contact</a> <div class="clear"></div> </div> </div> Hello. My first post at this section I'm trying to familiarize with all the positioning properties in CSS but got stuck when trying to migrate the table at the bottom of this code, to div blocks: Code: <!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></head> <style> body { margin: 0; padding: 0; font-size: 90%; font-family: "Trebuchet MS", Tahoma, Verdana, Arial, sans-serif; background-color: #FFF; color: #000; } table, div { padding: 15px; margin: 0; background-color: #464646; height: 30px; width: 100%; } tr, div div { color: #FFFFFF; font-size: 18px; height: 100%; } </style> <body> <table class="top"><tr><td>Product Name</td><td align="right">Company Name</td></tr></table> </body> </html> I tried wrapping two <span> inside a <div> and float the second <span> to the right, but from what I read so far, floating is not the solution because it sets the element as a block even if it's inline. Although it works using plain old tables - btw why is IE rendering a somewhat different page then FF? - and I should follow the KISS rule I want to learn how can I make this work. Thank you a lot! Hi, I'm having a problem which I though should be fairly simple, but I've been hacking at it for many hours now. I want to align blocks horizontally at the bottom of a containing block. The containing block has a fixed height while the contained block do not. Here's a mockup of what I want: URL How should I modify the following code so that it renders like the above? Code: <div style="height:50px"> <div style="float:left">one</div> <div style="float:left">two</div> </div> Thanks! Hi, i'm almost finished with my first css design. Everything works fine as far as i tested it. But when i refresh the graphical page (broadband) or click on the broadband link when i'm on the broadband page i get a white block on the left and right side of the page. It is very strange because it disappears when you scroll down and back up. Sometimes i have to refresh a couple of times, or switch between small- and broadband to see the effect. Code: http://users.pandora.be/jef_patat/test/index.htm I have no clue at all greetings, de Jef Hey guys! Usually if you make a table and then make another table, the other table will be located below the table before. I want them to be side by side. So I tried this CSS value : table { display : inline; } then it worked, but the problem is, that if the tables have different sizes, the smaller one is not aligned to the top and looks smaller than the table before it. I want them all to be aligned to the top. I tried vertical-align:top and valign="top", but they still don't work... Is there any other way to make tables have no line breaks before and after the table? Is there any other property that controls the line breaks of the table? I tried display:table-cell , but the problem is still the same. thanks APPEARS TO BE HASLAYOUT ISSUE IMAGE WITHIN ANCHOR NOT CLICKABLE. Hi Guys looking for a spot of help please. IE is driving me up the wall. Ive wrote a jQuery script for scrolling a list horizontally upon user clicking left or right. The list has anchors within it which are blocks which I want to be clickable with an image inside (fine in FF etc) but in IE the image within the anchor loses its ability to be clicked the rest if fine apart from I manually have to set the cursor to pointer to show the user its clickable still. Just when they click the item image within the anchor it does nothing. Here is a slim version of the HTML : Code: <ul> <li><a href="/page1.html"><span class="box_wrap"><span class="img"><img src="1.jpg" border="0" height="75" /></span><span>Item 1</span></span></a></li> <li><a href="/page2.html"><span class="box_wrap"><span class="img"><img src="2.jpg" border="0" height="75" /></span><span>Item 2</span></span></a></li> <li><a href="/page3.html"><span class="box_wrap"><span class="img"><img src="3.jpg" border="0" height="75" /></span><span>Item 3</span></span></a></li> <li><a href="/page4.html"><span class="box_wrap"><span class="img"><img src="4.jpg" border="0" height="75" /></span><span>Item 4</span></span></a></li> <li><a href="/page5.html"><span class="box_wrap"><span class="img"><img src="5.jpg" border="0" height="75" /></span><span>Item 5</span></span></a></li> <li><a href="/page6.html"><span class="box_wrap"><span class="img"><img src="6.jpg" border="0" height="75" /></span><span>Item 6</span></span></a></li> <li><a href="/page7.html"><span class="box_wrap"><span class="img"><img src="7.jpg" border="0" height="75" /></span><span>Item 7</span></span></a></li> <li><a href="/page8.html"><span class="box_wrap"><span class="img"><img src="8.jpg" border="0" height="75" /></span><span>Item 8</span></span></a></li> <li><a href="/page9.html"><span class="box_wrap"><span class="img"><img src="9.jpg" border="0" height="75" /></span><span>Item 9</span></span></a></li> <li><a href="/page10.html"><span class="box_wrap"><span class="img"><img src="10.jpg" border="0" height="75" /></span><span>Item 10</span></span></a></li> <li><a href="/page11.html"><span class="box_wrap"><span class="img"><img src="11.jpg" border="0" height="75" /></span><span>Item 11</span></span></a></li> <li><a href="/page12.html"><span class="box_wrap"><span class="img"><img src="12.jpg" border="0" height="75" /></span><span>Item 12</span></span></a></li> <li><a href="/page13.html"><span class="box_wrap"><span class="img"><img src="13.jpg" border="0" height="75" /></span><span>Item 13</span></span></a></li> <li><a href="/page14.html"><span class="box_wrap"><span class="img"><img src="14.jpg" border="0" height="75" /></span><span>Item 14</span></span></a></li> </ul> CSS Code: Code: ul { width: 9999px; list-style-image:none; list-style-position:outside; list-style-type:none; margin:0; padding:0; position: absolute; top: 0; } ul li { display:block; list-style:none; margin:0; padding:0; border:0; text-align:center; float:left; width:118px; height:133px; } ul li a{ display:block; border-right:1px solid #e2f5fe; outline:none; text-decoration:none; background:#FFF; padding:3px 2px 3px 2px; line-height:15px; } ul li a:hover{ background:#e2f5fe; color:#fe0084; } ul li span.box_wrap { display:block; background:#FFF; height:127px; } ul li span.box_wrap span{ padding:0px 3px; font-size:12px; } ul li span.img { padding:2px 0px 2px 0px; display:block; } Just when you try to click any of the images within the boxes its not clickable. Really stumped. Any help or pointers would be greatly appreciated. Thanks in advance! Hello, I have a problem that is making me crazy! I have a simple page with some news on it. Every news is a <div> and contains two floating blocks: Image(floating left) and the text(also floating left). These blocks must stay side by side and NOT one over the other. The width of the news <div> can be 500-550px max for layout reasons. If the text is longer than the space available Firefox moves the entire text block under the image, while IE resize correctly the text block. I have tried to apply diplay:inline; to both blocks with no effect. Here is the test page Link (I have limited the width to 500px to simulate the real layout.) CSS: Code: .news { float: left; clear:left; margin: 0 0 1em 0; width: 100%; } .img_hl { float:left; margin-right: 10px; } .newstext { padding-top: 1em; float:left; } Please help me!! -- Bye Redhawk I'm not confident enough with CSS to just use it, so I'm mixing it with some tables too. I want a layout with two tables next to each at the top and then another below. The two at the top are working fine, but the one below keeps jumping back up to the top. I've managed to get an ugly fix by putting in a load of <br> but this doesn't work in IE7 (unless I add a lot more, pushing the content way down in other browsers) and isn't much of a solution. The other problem I have is that I want to have the majority of my page with a white background, but to get a surrounding border I've set the body background to be a colour and then placed a div around all the content. I want this div to be the size of the page and so set it's height to 100%, but this makes it too small. Not sure why. Here is my code for my page and CSS. If anyone can help I'd be most grateful. Code: <!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=utf-8" /> <title></title> <link href="incl/default.css" rel="stylesheet" type="text/css" /> <script type="text/javascript"> <!-- function navon(num) { document.getElementById("nav" + num).style.backgroundColor = '#CDEB8B'; document.getElementById("nav" + num).style.paddingTop = '0px' document.getElementById("nav" + num).style.paddingBottom = '0px'; document.getElementById("nav" + num).style.borderTopWidth = '10px'; document.getElementById("nav" + num).style.borderBottomWidth = '10px'; } function navoff(num) { document.getElementById("nav" + num).style.backgroundColor = '#C3D9FF'; document.getElementById("nav" + num).style.paddingTop = '8px' document.getElementById("nav" + num).style.paddingBottom = '8px'; document.getElementById("nav" + num).style.borderTopWidth = '2px'; document.getElementById("nav" + num).style.borderBottomWidth = '2px'; } //--> </script> </head> <body> <div class="main"> <table width="29%" border="0" cellpadding="2" cellspacing="5" align="left"> <tr> <td><img src="" alt="" width="230" height="80" border="0" /></td> </tr> </table> <table width="70%" height="60px" border="0" cellpadding="2" cellspacing="5" align="right"> <tr> <td width="180px" class="nav" id="nav1" onmouseover="navon('1')" onmouseout="navoff('1')">link</td> <td width="180px" class="nav" id="nav2" onmouseover="navon('2')" onmouseout="navoff('2')">link</td> <td width="180px" class="nav" id="nav3" onmouseover="navon('3')" onmouseout="navoff('3')">link</td> <td width="180px" class="nav" id="nav4" onmouseover="navon('4')" onmouseout="navoff('4')">link</td> <td width="180px" class="nav" id="nav5" onmouseover="navon('5')" onmouseout="navoff('5')">link</td> </tr> </table> <br /><br /><br /><br /><br /><br /> <table width="100%" border="0" cellpadding="2" cellspacing="5" align="center"> <tr> <td width="70%"> some content </td> <td width="30%"> some more content </td> </tr> </table> </div> </body> </html> Code: @charset "utf-8"; /* CSS Document */ body { padding-right: 4%; padding-left: 4%; padding-top: 30px; padding-bottom: 30px; font-family: Arial, Helvetica, sans-serif; font-size: 14px; letter-spacing: 0.1em; color: #000000; background-color: #EEEEEE; } a:link { color: #000000; text-decoration: none; } a:visited { color: #000000; text-decoration: none; } a:active { color: #000000; text-decoration: none; } a:hover { color: #000000; text-decoration: underline; } .main { background:#FFFFFF; border: 10px solid #36393D; width: 89%; padding: 5%; } .nav { padding: 8px; background-color: #C3D9FF; vertical-align: middle; text-align: center; font-family: Geneva, Arial, Helvetica, sans-serif; font-size: 24px; color: #36393D; cursor:pointer; border: 2px solid #36393D; } **FIXED** Ok moving my site from tables to CSS in my spare time at work but im having some difficulty with height attr. Click me The Left and right bars - I would like them to go all the way to the bottom of the page. If anyone can help - please let me know! Thanks! Edit: Got it to work in Firefox just fine - but IE6 is still giving me problems. Edit #2: *sigh* needed to set body to 100% - man IE is bass-ackwards. Hi everyone, Dont actually know if this is possible (my css knowledge is way not what it should be!) Can I define a whole set of attriblutes for a table (fonts, links, hover links etc etc) and than just use it with <table class = "whatever"> etc and then that table will have all the properties I defined (for only that table, not for the rest of the page) if so how could I go about doing that. Any help is very appreciated! cheers Does anyone know of some good tutorials on how to use CSS rather than tables? If so, could you providea link. Thanks a lot. andrew Hello everybody, I am new to the forum and also a newbie to webdesign! I am hoping that somebody wants to help me out as I am trying to put the design of a table and the font used in CSS. I am trying to create a new table class out of: <table cellspacing="0" cellpadding="0" width="100%" class="tekst6" bgcolor="#E6373D"> (tekst6 = FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #ffffff; ) How do I do this? Many many thanks in advance for your help! Regards Buzzman |