I think that the chief reason why CSS is so hard to get your head around -- particularly for those who are used to doing HTML "by hand", or any other programming language -- is that CSS is "non-procedural", while HTML is "procedural". In HTML, and other procedural languages, you can point to something and pretty easily tell that "this" gets done before "that". Not so with CSS. CSS declarations are more like "whenever" statements. For example, whenever a P tag occurs (in the HTML), apply these changes to its styling; Whenever a P of class "annotation" occurs, style it in this way, and so on. Coming from a programming background, this was the biggest hurdle for me. -- Regards, Rod Dav4is / P.O. Box 118 / Hyde Park, NY 12538 / USA Little Nine Partners Historical Society Trustee, Webmaster, Lifetime Member http://www.rootsweb.ancestry.com/~nylnphs/ Personal website: Genealogy, et Cetera: http://freepages.rootsweb.ancestry.com/~dav4is/
On Sun, Mar 20, 2011 at 6:57 PM, Rod Dav4is <L9PHS.webmaster@verizon.net>wrote: > I think that the chief reason why CSS is so hard to get your head > around -- particularly for those who are used to doing HTML "by hand", > or any other programming language -- is that CSS is "non-procedural", > while HTML is "procedural". For me, I need to see action=result: "I do this" and it "makes it do that". CSS *seems* too disjointed and too mechanical TO ME. I feel like I have to remember too much "instruction" (if you want x to do this, then you have to remember what to use to get a # thingie or a . (dot) thingie to display what you want to see in the page. CSS reminds me a lot of math and mathematical formulas, neither of which I excel in doing. CSS also involves some memorization. The more years lived, though, the less brain seems to like memorizing anything. One evening I think, "Oh I got it!" but the next day I've forgotten my "Ah ha" moment. To ME, using easier words to "make it go there" is more desirable. CSS is like someone saying "milk" is now "hosom" -- CSS language is strange, like learning a foreign language (which I was never good at either). I am good with words and organization. HTML seems more organized IMO. It has fewer "areas" Head, endHead, Body, EndBody, wrapped in between HTML open and close. I now know where to put HTML code in those categories and which codes. BUT, with CSS I now have to rely on "Comments" to show me where a specific set of instructions applies to my page. As an analogy, we are all accustomed to A Book; many have an About Author; a Forward; An Intro; Chapters; and maybe an Index. If I published a book with About Author, the Forward, and Index interspersed throughout the Chapters, people would be like, "Huh??" CSS seems like that, IMO. I don't have to remember where the parts of a particular book are located; I just know it from experience. If we made 1st graders try to grasp the sections and order of a book, it'd be hard for them. CSS makes me feel like I've been given advanced material, like being made to do Algebra before I master how to add, subtract, and multiply, or like handing a 1st grader advanced College material to read, comprehend and use. That's why Comments in CSS are so important; But, CSS shouldn't need Comments to explain it. CSS should be easy(easier) if Web Authorities want more people to use CSS. Instead, I struggle to figure it out, even with Comments. The ONLY positive I have to say (so far) is yes, CSS makes nicer pages and loads pages faster. Otherwise.... I hated Algebra in school, and right now I hate CSS. LOL Maybe it'll grow on me (like a wart? ) Or, maybe I'll understand it if I keep practicing for another 5 years. Judy