Uses of html classes aside from css
I am a total beginner so pls be patient with me if my question might sound too dumb.
I am studying html, css, basic native php, and cakephp at the same time (which is not a good idea, I think its better to master the native cakephp first before jumping to any framework). As far as I know classes and ids are for css styling until I stumbled upon this code when I am studying cakephp:
<div class="posts index">
.
.
.
</div>
Note: I scaffolded a Post
I tried to look in the default css of cakephp for the class "posts index" but I can't find it so I concluded that there may be other uses of html classes aside from css. I am not sure about. I am just guessing. Can somebody explain to me in general about html classes. I also wanna know about the class "posts index" regarding its significance to cakeph开发者_如何学Gop. Pls help...
first of all you have to separate your "business logic" (program logic) and your "view" (output). The logic is done by your php code, it doesn't matter whether you use a framework or not. Your output can be html, xml, wml or some other stuff and is generated by your logic, your php code. -> The class definition is only relevant in your output, so it doesn't matter for your cakePHP!
Next, there's no syntactic rule that every class in html must be defined in css. So your conclusion uses a rule that does not exist :-) It is not nice code because you have unused and needles html code, but it is not wrong. Most frameworks and tools use such "default classes" because of template support. Look at the html code of wordpress templates, there you will find these classnames, too, to make it more easy to change your css files to get different look&feels. When you create a new template with css styles, you know that the "posts index" element contains post-entries...
You can use classes and ids in JavaScript to get and identify elements, but this belongs also to the output/client-side area.
BTW: if you parse your html with some php code and need the class definition to identify an html element in the DOM then it matters, but I don't think you want do this ^^
精彩评论