I have a little problem, when I change the resolution (800 x 600, 640 x 480), the components inside a h:panelGrid don´t resizing, are there a way for me to change the resolution and the components resize their size ?
JSF doesn't support rowspan or colspan, much to many people's annoyance. There was an extension tagset that did, but the common approach is to define one's grids or tables according to their maximum spans and then embed sub-tables/grid within them.
The preferred way to set physical size and location of elements in JSF is via CSS, the way your second example did. You can do it by "brute force" (style=), by CSS class, by element type, or by ID, although the CSS ID will only pair up if you use the generated HTML ID of the object in question, not the JSF (short) ID.
You don't need all those div elements. A raw HTML div is functionally equivalent to a 1-column panelGrid with one element in it.
Finally, don't forget that when using extension tagsets, that often there are special CSS classes defined for the extension tags, so you can override those if you want a consistent appearance of similar components.
"privilege" comes from the Latin words for "private" and "law" (legal) and dates to feudal times. To "claim privilege" meant that you were above the laws that applied to the common people.