MantisBT - v3.1 Release
View Issue Details
0000841v3.1 ReleaseCosmetic/UI Issuespublic2011-06-24 02:312014-01-25 00:29
Assigned Tocaseydk 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version3.1 
Summary0000841: Some extra HTML for better themes (with patch)
DescriptionThe table tag is widely used for various types of content, for layout and everything else :-). All I did is:

- wrapping all(?) table.tbl (which are really used for displaying data) in
   a div (class = content_table)

- wrapping all(?) tables which contain explanations (keys/colors) in a div (class = content_explanation)

- wrapping all(?) tables which contain additional options/filters/buttons in a div (class = content_options)

The existing themes are not affected by these divs (as far as I can see).
Additional InformationI am on a good way to clean up the html and have a consistent layout for easy theming. I would be glad if you support my work. -Marc
Attached Filespatch patch_0000841.patch (79,723) 1969-12-31 16:00
patch patch_0000841_v2.patch (36,804) 1969-12-31 16:00
patch patch_0000841_v3.patch (52,313) 1969-12-31 16:00
patch patch_0000841_v4.patch (55,843) 1969-12-31 16:00
patch patch_0000841_v5.patch (110,281) 1969-12-31 16:00

2011-06-24 04:50   

Here is my list of observations:
1) You shopped all the cellpaddings off the tables

2) We don't have those 3 css class definitions on our core main.css files and I don't know what are the consequences as far as html/xthml validation is concerned

3) This requires testing file by file on all browsers we support:
3.1) FF 3.5
3.2) FF 4.X
3.3) IE 8
3.4) IE 9
3.5) Opera 10 and up
3.6) Chrome/Chromium 12
3.7) Safari 5

4) modules/admin/vw_usr_log.php

-<table align="center">
- <tr>
- <td>
- <h1><?php echo $AppUI->_('User Log'); ?></h1>
- </td>
- </tr>


5) modules/calendar/vw_day_tasks.php
That doesn't look right as $s does not seem to be initialized properly.

6) modules/links/index_table.php
What's the problem with title block method? why the need to write all that html?

7) modules/reports/index.php
+echo '<div class="content content_options">';

If suppressHeaders is on, this line will blow the pdf generated reports.

8) Why do we need the divs? Can't we simply extend the tables classes instead?

At this point I can't accept your patch for the reasons above, and I will also need Keiths second opinion on this.
But I can be convinced otherwise if I can see the added value for web2Project of this.

Eitherway, thank you very much for the proposal, and we'll sort something out.


Pedro A.
2011-06-24 15:27   
You're right, that was way too much.

New patch contains only divs. Didn't touch anything else. I even did not touch the following modules: contacts, help, projectdesigner, projects, public and reports (this time..).

1) Code is back in new patch.

AFAIR, cellpaddings (when they are set in the table tag, not the browser default ones) can't be overwritten with CSS (neither border-spacing nor border-collapse) in IE6 and IE7.

2) Code remains valid.

3) I've got all of them on W7. But how can I identify a bug? Current themes dont't use cellpaddings, margins, etc. in a consistent way. And the layout won't explode on my screen because of an extra div (I hope..)

4) Code is back in new patch, but:

This code snippet appears in div.tabox for example, which already has an headline. Furthermore, tag h1 is not valid at this point (at least concerning the semantics).

5) Code is back in new patch, but:

Just wanted to avoid an empty table tag, which happens right now (if no tasks are found). This not valid.

6) Code is back in new patch, but:

Like 4... and furthermore: This code is difficult to style because it's the same like used for the module header (title / search / options) on every page. So if you want to style this header, you have to write extra CSS to remove the styles later on.

7) Code is back in new patch.

8) When I use w2p and open firebug, all I see is tables. Even a single button is wrapped in a table. So just be glad that I don't want you to insert some additional tables ... :-)

Another reason: I like clean HTML. I like HTML that I can style with CSS. If you want to apply paddings or borders to the table tag, you might run into troubles. You might run into troubles with widths. Giving a table cell a special color (for the current day i.e.), this might not work with table set on border-collapse:separate. But in this case, you are limited in the way you use borders for the whole table. And so on.. With an extra div life is much easier for designers. Less bugs, more styles. 'nuff said.

Thanks for having a look at my code.


2011-06-27 09:27   

Added some more ... and some in module projects.
2011-07-08 03:58   
Latest patch and some screenshots:

2011-08-24 06:20   
Moved to:
2014-01-01 17:14   
I used some of this but not 100%.. regardless, the core system is properly CSSified and most of the tables are gone. :)
2014-01-21 17:42   
Closed for v3.1 Release which occurred 20 January 2014.

Issue History
2011-06-24 02:31marcehretNew Issue
2011-06-24 02:32marcehretFile Added: patch_0000841.patch
2011-06-24 04:50pedroaNote Added: 0001989
2011-06-24 13:34marcehretFile Added: patch_0000841_v2.patch
2011-06-24 15:27marcehretNote Added: 0001990
2011-06-25 23:23caseydkProjectv2.4 Release (Closed) => Pending Requests
2011-06-27 09:25marcehretFile Added: patch_0000841_v3.patch
2011-06-27 09:27marcehretNote Added: 0001994
2011-07-05 00:20marcehretFile Added: patch_0000841_v4.patch
2011-07-05 08:03marcehretFile Added: patch_0000841_v5.patch
2011-07-08 03:58marcehretNote Added: 0002021
2011-08-24 06:20marcehretNote Added: 0002161
2011-08-25 00:06giesenjaTag Attached: templates
2014-01-01 17:03caseydkProjectPending Requests => v3.1 Release
2014-01-01 17:14caseydkNote Added: 0003159
2014-01-01 17:14caseydkStatusnew => resolved
2014-01-01 17:14caseydkResolutionopen => fixed
2014-01-01 17:14caseydkAssigned To => caseydk
2014-01-21 17:42caseydkNote Added: 0003222
2014-01-21 17:42caseydkStatusresolved => closed
2014-01-21 17:49caseydkFixed in Version => 3.1
2014-01-25 00:29caseydkCategoryGeneral => Cosmetic/UI Issues