Hi there, On Thursday, July 11, 2013 6:28:07 PM UTC+2, rusi wrote: > > Hey Paul > Thats a thoughtful and detailed answer -- thanks! > css is so immense to start with, and it totally makes no sense when starting with it. Even reading up about the box model you talk about bit later on, its still not logical, but hold on, it will make sense if you stick with it,
> > Since I get some of what you say, half-get some, I hope you will permit me > to rephrase your suggestions according to my understanding. > the only way to go > > > try using a seperate css and html page, and dont use inline-styling (eg. > style=""...) > > Sorry for the inlines -- just part of my hacks to figure things out. > sure, i figured that, just to let you know > I thought when in total-hack mode, I'd keep css internal though not inline > and then move it to another file when more stable/ready. > but there my way differs, especially when using less (for example) my "typical" project has a bunch of css (less) files - site.less includes all the other css files i use, nothing more, this is the file i include in my html - functions.less http://lesselements.com/ for example, that stuff goes in this file, here's also where you solve your cross browser stuff, just have a function deal with it and keep your own css clean - vars.less sutff like colors, fonts paddings, margins maby box sizes go here - holmes.css just to make sure your html is valid, it wont do a thing otherwise - base.less contains the styling of always recurring elements, like header, footer, menu body and the basic container class, and some default element styles (h1,2.3,... ul li etc) but also popup box styline, message styling, error styling stuff like that, global recurring elements - layout.less for example the 960 grid, of your custom version of it, tho i always build upon the basics of 960, i just ignore their grid sizes and paddings, but the clearing and container stacking, pushing/pulling is nice layout also contains the box and container styles, but just their defaults no mention of red or blue versions there - lists.less styling of list headers, lists (ul, dl) list items (dd, li, dt), list footers (just different class name) etc. - parts.less functionality is almost always contained in a box (div) give it a base class name and just style its details prefixed with he base class name - theme.less here go the variations of the default styles, like a red box instead of a blue one, so what goes here should be only refer to visual styling not structural. sooo not just one file :) i use many many files, and if i include frameworks i put those in another nested folder and include them in my site.less doing things this way you always know where to find some styling, files are slim and easy to read, you also create a basic styling you can include in other projects with this great for just hacking up a fast site/app with default ok looking styling (like bootstrap does for you) and best of all, you can see what css is not used anymore, go ask 20 ppl about their css, and theyll all tell you they have css rules that arent needed but theyre not sure if they can safely remove them > > visually it looks like your div#center is right of the div#left but > actually its overlapping > > the div#left > > remove the height properties form div#left and cus half the text, and > youll see what i > > mean, it works besause the text is in there and pushing away the > div#center > > if you were to put some block-level elements (for example) there instead > of inline text > > the div#center would render over your left container. > > > so tip: design your templates without texts in them, and when that > works, add text > > and dictate the behaviour of it (by using float for example) > > > > Vow! Thanks to your firebug tip now I see what you are saying. > Ive tried to use the hover trick you refer to but I did not see that it > covers margin and border. Speaking of firebug/debugging: > make some html file, and put a bunch of elements in it, (h1...6, p, ul, li, div, ...?) open the file in chrome /ff, and press F12 on chrome: goto the left tab, elements and unflod some part of the html if you click the ul, then on tie right part you can see some styling of it the top is "computed style", its usefull to see the real active styling of the element, nice if it has a lot of properties inherited the "styles" box tells you its style and its inherited styles from parents / css rules the "metrics" box is a handy tool for you to see its measurements and their buildup here you can see that your default unstyled ul has 16px top/bottom margin, and 40px left padding if you hover the element in the left part of the debugger (elements tab) you can see it light up using the same colorset as in the metrics box, salmon for maring, orange(?) for border, green for padding, blue for inner-size Is firebug better or web developer? One thing I would like is some decent > documentation -- cant seem to find. Another thing: some help to debug my > (mis)understandings of the box-model. Found dom inspector plus but cant > make sense of how to use it: > https://addons.mozilla.org/en-us/firefox/addon/dom-inspector-dm/ > ok, so, i use ff and chrome both, i kinda always use chrome, just because its so much faster. that being said, sure i had my preference of debugger in the past, but they all have their benefits/cons, and i can say that i just go for the default chrome's debugger and firebug when on ff. i checked the screenshot of that dom inspector you mentioned, and it looks.. well clutterd, but maby that just takes some getting used to > > > > Use html5 doctype > > Ok... In view of your other comment (cross-browser compatibility is less > to be thought today) I guess I should just jump on that bandwagon! I > thought its too hot and bleeding edge for a noob like me! > well adding less to your starting setup and then also some framework maby sure will increase the learning curve a bit, but oh boy its so worth it!! after using a css processor (like less) you wont be able to imagine how you used to do things before > > At a high level, I gather you are suggesting bootstrap-framework? > if you wanna learn things, then nope, they fixed way to much issues for you in the framework, you need to understand those first if you wanna be good at css > Well earlier I had tried 960. And it did not quite work out. > same, i just use their method, push/pull etc etc. but not their metrics, i make boxes like box_123 for a box with 123px width, that way it works for every project but you can still use things like push, alpha/omega clearfix etc. > Gathered I need to know basics of css and so better to start with the > right scale of complexity. So thought I'd start with 'guru-given' css, > which worked out a layout and then play with the other aspects > (colors,fonts etc) as I work out the mysteries of the box model, the > cascade etc -- all the grand stuff I understand in theory but is woeful in > practice. > yes!, but... like the html file you posed in your origional question, its idea of a 2 column layout was probably copied from some example, however that example used text inside the boxes, and as i hope i explained a bit, the layout wont hold when you remove the texts, so be weary of things working in examples, many times they only work in those clean environments instead of working always and everywehere > I am a programmer, so concepts/syntax is not an issue usually, though > chaos is! > then you're gonna love less's funcitons > > Anyway those are my thoughts and if you are suggesting some other line I'd > be pleased to hear > > > here are some of my most used less functions (its to create the 960 grid behaviour but my variation of it) //useable for both liquid and fixed layouts :), add width for fixed, add min-width if needed for liquid .box() { padding:@padding-box; margin:@margin-box; display:inline-block; overflow:hidden; position:relative; float:left; //width: 1px; //:P just to make sure youll set the width width: 100%; } .row (@width: 100%) { float:left; display:block; clear:both; width:@width; } //NOTE!! columns allow for overflows, sometimes you will have the need to position a column's content outside of the column itself //with negative margins (for example), this wont be possible if it captures its contents like a box //eg. always use .box() types inside a column .column(@width) { width: @width - 2* @margin; float:left; padding:@padding-box; .box { margin:0 0 2*@margin 0; } } the vars (prefixed with a @) come from vars.less so if i wanted to make a box-based style .box_contact { .box(); background-color:red; } boxes are always 100% width, so they will adapt to the column theyre in, which is really awesome, cus that way it works like a component sorry this mail is as big as the last one, theres so much to be said gl again -- -- -- You received this because you are subscribed to the "Design the Web with CSS" at Google groups. To post: css-design@googlegroups.com To unsubscribe: css-design-unsubscr...@googlegroups.com --- You received this message because you are subscribed to the Google Groups "Design the Web with CSS" group. To unsubscribe from this group and stop receiving emails from it, send an email to css-design+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.