Styling border to match fill in QGIS?

I'm not sure how to enforce it for existing polygons, but you could make it work for any future ones that you create.

In Project Properties>Default styles>Style Manager, you could create your own default symbol style for "Fill":

QGIS Style Manager

Edit the Border color's expression and set it to @symbol_color: Editing the Border expression

Setting the border expression

Lastly, set your new fill style as the default: Setting new fill as default

This will make the border always match the set symbol color. This won't necessarily be reflected in the polygon's properties though. So it can still look like you have a different color border set in the properties, but it should always actually match the object's set symbol color in the map.

Wish I had a better idea as far as making this retroactive, but perhaps I or someone else will come along with a good idea on that later.


another way to get the border color to match the fill color is to add a new layer to your symbol with the symbol layer type = Outline : Simple line.

When the color is applied at the symbol level all layer get the same color (unless one layer is locked) so the fill and the added border are the same...

enter image description here