I've been working on a complex CSS design with a lot of floats for a TYPO3 implementation. It's been frustrating for me because the layout works fine when hand coded as HTML. But when I use this layout with TYPO3, the layout doesn't work.

What I've found that works is removing the div's that are automatically wrapped around the content with the span class name of csc-default. Once I found that my layout works without the csc-default frame wrapped around my content elements, my next task was to set up TYPO3 to not wrap my content elements with the csc-default frame automatically.

One method would be to add the following to my typoscript setup in my site template:

tt_content.stdWrap.innerWrap >

However, that doesn't work optimally because it makes TYPO3 not wrap frames around any content - ever. I think that line of code also makes it so that no anchors are created for each content element.

What I found I needed was a more selective way of removing the "csc-default" frame.

The solution I found, and which is the way I prefer to do things, is to create a new frame type called "No Frame" which doesn't wrap any kind of frame whatsoever around any content element where the "No Frame" frame is selected. Doing it this way has frames wrapped by default, but when I choose to I can turn the frames off.

So what follows are instructions to show you how I set up a special "No Frame" frame type for this TYPO3 installation.

In my Page TSCONFIG of my root page, I added the following lines which just add a new frame type to the dropdown menu:

# Add the new Frame type to the dropdown menu
TCEFORM.tt_content.section_frame {       
addItems.100 = No Frame
}

Some typoscript which follows was added to the setup section of my typoscript template. The following typoscript which was added to the Setup section of my typoscript template tells TYPO3 to render the "No Frame" frame type by adding no wrap whatsoever.

tt_content.stdWrap.innerWrap.cObject = CASE
tt_content.stdWrap.innerWrap.cObject {

     key.field = section_frame
     100 = TEXT
     100.value = |
}

That's the only two things needed to get a special frame type that is really not a frame at all.