[GNC] GnuCash 3.7 and Reports

Adrien Monteleone adrien.monteleone at lusfiber.net
Tue Sep 10 21:06:15 EDT 2019


Indeed, unselecting those columns in Options > Display Columns shrinks the table to not take 100% of the space.

A simpler fix would be to change this line in the CSS block:

.entries-table > table { width: 100% }

to simply:

table { width: 100% }

as there is no reason to specify this for just the .entries-table that I can see. (other than the ‘main’ table, each of the header sections are their own table, but still behave if they are set to 100%.

You might also set just the entries-table container smaller and center it:

.entries-table {  width: 75%; margin-left: auto; margin-right: auto; }

I’m generally not a fan of nested tables for layout purposes, especially when the layout can be achieved with floats. (that are being used anyway) The invoice line items *are* tabular data, so a table there of course makes sense and is semantically correct.

I filed a bug for this: https://bugs.gnucash.org/show_bug.cgi?id=797401

Regards,
Adrien


> On Sep 10, 2019 w37d253, at 6:39 PM, John Morris <johnjeff at editide.us> wrote:
> 
> Hi Adrien,
>  You were right, the changes I had made did have a bearing on this problem. However, they only reveal the miscoded HTML in GnuCash 3. Also, the changes in question are to the invoice report itself, not the stylesheet.
> 
>  It turns out that the relevant change I made is that we have no need for several of the columns (Date, Action, Discount and Taxable). As soon as those columns are eliminated, the table becomes narrower. Digging deeper, I discovered that GnuCash 2.6 inserts a vitally important width=“100%” into all but the outermost <table> command in the invoice. GnuCash 3.7 does not insert that argument. Thus, when several columns are removed, the table is narrower. Of course, my banner is still the same width, leaving the invoice body too small for the page.
> 
>  If you can confirm this behavior, I think we can call this a bug.
> 
>  Fortunately, I think I have found a workaround until the code is corrected. Thinking back about my misadventures with the CSS, I remembered that there was a width: 100% for each of the subtables. However, looking at the HTML code, I noticed that there was an additional table called “main-table” enclosing everything except the banner. This table style was not given the 100% width. Adding 
> 
> .main-table > table { width: 100% }
> 
> to the end of the CSS field in the invoice options gives me exactly what I want.
> 
> Best,
> John



More information about the gnucash-user mailing list