[Typo3] IMAGE content element with no tables

JoH info at cybercraft.de
Sat Mar 5 13:18:04 CET 2005


> Unfortunatly the tables wrapped around images are HARDCODED in
> "class.tx_cssstyledcontent_pi1.php". (Bullets and FileUploads both
> have hardcoded wrapping too)
> So you'll need to edit the PHP directly, ifyou want them removed..

Soory, but that's not correct:
The problem is, that the content elements "image" and "text with image" are
both rendered using the TS cObject "IMGTEXT" while there are two other
cObjects "IMAGE" and "IMG_RESOURCE" that are not used at all, neither in
content(default) nor in CSS-styled-content.

The cObject IMGTEXT has hardcoded TABLE tags, the other objects have not. So
the only thing you have to do is something like:

tt_content.image >
tt_content.image = COA
tt_content.image {
    your definition of image elements here
    based on IMAGE or IMG_RESOURCE
}

and there won't be hardcoded tables anymore.

I am currently working on a TS-based solution that makes use of IMAGE
cObjects instead of IMGTEXT to render both content elements. Except some
cosmetical things like "image quality", "image effects" and "no Rows" all
standard features of content element "image" or "text with image" are
working fine, accessible, XHTML validated and of course without tables. The
"clickenlarge" feature is not fully accessible because of "onclick" without
a corresponding "onkeypress" which is harcoded too. You can have space
before, space after and frames set in the content elements, space and all
margin and border parameters in the TS constants, captions and caption
alignment. All working and all without tables but using DIV and CSS.

Downside: Many of the styles have to be inline since you have to fill in at
least width parameters dynamically (calculated from object widths, paddings,
borders and columns) to convince browsers like Opera to render the code the
same way as IE and Gecko based browsers. But this is not a problem of TS
versus hardcoded PHP it's just a problem of CSS-based tableless design and
the abuse of "float:xxx" for layout tricks which is very problematic especia
lly for Opera. So what's currently on my ToDo-List is to remove all "static"
styles from the HTML-code, replace them with classes and put them into an
external stylesheet to get HTML as lean as possible.

Have a look at http://www.cybercraft.de/index2.html (currently frame based,
since the domain has not been transferred to our TYPO3-server yet)

then in the left menu click on "level1 1"
then in the top menu click on "level2 1"

You can see different standard elements, where the third and fourth might be
interesting.

Joey





More information about the TYPO3-english mailing list