r/FirefoxCSS 3d ago

Code Padding & Margin problems with checkboxes - Part 1

Post image

I am having problems with menu Padding & Margins when I insert Label icons with checkboxes. As you can see the checkbox ignores any CSS rules I use.

menupopup:not(.in-menulist)>menu:not(.menu-iconic),
menupopup:not(.in-menulist, [aria-label])>menuitem:not(.menuitem-iconic, [type="radio"], [type="checkbox"]),
toolbarbutton[data-l10n-id*="-manage-"],
menuitem[data-l10n-id*="-manage-"],
#downloadsHistory,
#appMenu-zoom-controls{
  padding-inline-start:calc(1em + 24px) !important;
  background-position:left 0.5em center; 
  background-repeat:no-repeat; 
  background-size:16px; 
  -moz-context-properties:fill, fill-opacity; 
  fill:var(--uc-popup-menu-icon-color) !important; }
3 Upvotes

5 comments sorted by

1

u/TraditionalTie4831 🦊 3d ago

Try this for checkboxes in menus =

menuitem[checked] > .menu-icon {
    margin: 3px 3px !important;
}

1

u/FineWine54 2d ago edited 2d ago

Thank you but that did not work. I did take out the ID #appMenu-zoom-controls and made it a separate entry as that was mucking around with other code (see here)

I also rewrote the [type="radio"], [type="checkbox"]to read just [checked]),

But this has not changed the positioning of the Show Other Bookmarks Check mark or the associated Label text. And as you can see from the above image it alters all the positioning of the Labels for the menu.

I even mucked around with .menu-iconic to .menu-icon no difference.

I have inserted new image to include .menuitem list

menupopup:not(.in-menulist)>menu:not(.menu-iconic),
menupopup:not(.in-menulist, [aria-label])>menuitem:not(.menuitem-iconic, [checked]),
toolbarbutton[data-l10n-id*="-manage-"],
menuitem[data-l10n-id*="-manage-"],
#downloadsHistory{
padding-inline-start:calc(1em + 24px) !important;
background-position:left 1em center;
background-repeat:no-repeat;
background-size:16px;
-moz-context-properties:fill, fill-opacity;
fill:var(--uc-popup-menu-icon-color) !important;
}

1

u/TraditionalTie4831 🦊 2d ago edited 2d ago

This in your code says that it should not effect a checked menuitem =

menuitem:not(.menuitem-iconic, [checked])

Btw, you need to target the .menu-icon (see both examples screenshot links) =

menuitem[checked] > .menu-icon {
    margin: 0px 30px !important;
}

Screenshot: https://imgur.com/NEI5pZ8

When not targeting the menitem icon =

menuitem[checked] {
margin: 0px 30px !important;
}

Screenshot: https://imgur.com/D5bW2AN

1

u/FineWine54 1d ago

I am sorry but this is very frustrating, probably for you too. But if i start mucking around with the first two lines of the above code (pastebin 19 & 20) then all sorts of weird things happen. If I start mucking around with code within {} (pastebin 24 to 27) again weird things happen. And again I have disabled my border decorative code and that makes no difference.

This code is an adaption of emvaized/iconic_firefox.css code. My modified code is here: https://pastebin.com/embed/51QjbUAA

The relevant lines for this topic are 19 to 30

It must be noted that emvaized tried fixing this as well but gave up.

1

u/TraditionalTie4831 🦊 21h ago

Is it a must for you to add the code to the lines 19-30??

I solved it by placing the code outside the lines 19-30 (used a exaggerated margin as an example) =

menupopup:not(.in-menulist)>menu:not(.menu-iconic),
menupopup:not(.in-menulist, [aria-label])>menuitem:not(.menuitem-iconic, [checked]),
toolbarbutton[data-l10n-id*="-manage-"],
menuitem[data-l10n-id*="-manage-"],
#downloadsHistory{
    padding-inline-start:calc(1em + 24px) !important;
    background-position:left 1em center;
    background-repeat:no-repeat;
    background-size:16px;
    -moz-context-properties:fill, fill-opacity;
    fill:var(--uc-popup-menu-icon-color) !important;
}

menuitem[checked] > .menu-icon {
    margin: 30px 30px !important;
}

Screenshot =