Join the AMA (Ask Me Anything) with the Firefox leadership team to celebrate Firefox 20th anniversary and discuss Firefox’s future on Mozilla Connect. Mark your calendar on Thursday, November 14, 18:00 - 20:00 UTC!

Search Support

Avoid support scams. We will never ask you to call or text a phone number or share personal information. Please report suspicious activity using the “Report Abuse” option.

Learn More

55 breaks our css

more options

We are a manufacturer with distribution warehouses in Texas, California, Kentucky, Florida, and New Jersey. We use Firefox to run our shipping software at each of these warehouses.

As of the version 55 32-bit update, the CSS no longer works properly for the printed documents that ship with our orders.

We have tested with other versions, and it does work properly (52.3.0, 54, 57.0b3, 58.0a1)

How can we go about fast forwarding past 55 at an enterprise level so our shipping documents print properly again?

We are a manufacturer with distribution warehouses in Texas, California, Kentucky, Florida, and New Jersey. We use Firefox to run our shipping software at each of these warehouses. As of the version 55 32-bit update, the CSS no longer works properly for the printed documents that ship with our orders. We have tested with other versions, and it does work properly (52.3.0, 54, 57.0b3, 58.0a1) How can we go about fast forwarding past 55 at an enterprise level so our shipping documents print properly again?

Chosen solution

If you do not want to use beta software, and you prefer Firefox 55-56 over other browsers that do not have this problem (such as the Firefox 52 Extended Support Release -- ESR):

The table border bug occurs when a table has border-collapse:collapse. Using the default border-collapse behavior can lead to unattractive double-borders (or gaps in single borders), so I believe you need to set cellspacing="0" on those tables; I don't think there is another CSS solution.

Such a change could be applied by modifying your templates, or by letting users modify the page in their browser at print time. Based on simple test pages, the required script is brief; I haven't tested your pages, obviously. However, even a brief script may be inconvenient to apply:

 var tbls=document.querySelectorAll('table'); 
 for (var i=0; i<tbls.length; i++) {
   tbls[i].setAttribute('cellspacing', '0'); 
   tbls[i].style.borderCollapse = 'unset';
 }

The modification can be applied manually using a bookmarklet, or automatically using a user script engine such as Greasemonkey, Tampermonkey, or Violentmonkey.

Read this answer in context 👍 3

All Replies (8)

more options

just throwing it into the mix - firefox 56 will be released tomorrow... maybe check if it also contains the fix.

more options

Philipp,

Thank you fro the reply. We will wait for the new update and hope for the best!

Cheers! Mark

more options

Could you be more specific about the problem?

For example, if tables that continue onto a second page have no borders on that continuation page: That is fixed in Firefox 57 but will remain a problem in Firefox 56.

more options

jscher2000,

Tables not continuing after the first page is our biggest problem.

Thank you for the info.

more options

Chosen Solution

If you do not want to use beta software, and you prefer Firefox 55-56 over other browsers that do not have this problem (such as the Firefox 52 Extended Support Release -- ESR):

The table border bug occurs when a table has border-collapse:collapse. Using the default border-collapse behavior can lead to unattractive double-borders (or gaps in single borders), so I believe you need to set cellspacing="0" on those tables; I don't think there is another CSS solution.

Such a change could be applied by modifying your templates, or by letting users modify the page in their browser at print time. Based on simple test pages, the required script is brief; I haven't tested your pages, obviously. However, even a brief script may be inconvenient to apply:

 var tbls=document.querySelectorAll('table'); 
 for (var i=0; i<tbls.length; i++) {
   tbls[i].setAttribute('cellspacing', '0'); 
   tbls[i].style.borderCollapse = 'unset';
 }

The modification can be applied manually using a bookmarklet, or automatically using a user script engine such as Greasemonkey, Tampermonkey, or Violentmonkey.

Modified by jscher2000 - Support Volunteer

more options

That should not be hard to do at all. I will add the script, push the update of our code and report back early tomorrow with the results.

Thank you!

more options

jscher2000,

Sorry for the late reply. We added the code you provided earlier to our print button event handlers and seems to have fixed us up nicely!

Thank you so much for your fast replies and helping us get back up and going!

more options

Glad to hear it's working and sorry that it's necessary!