I'm using Firefox 80.0.1 in Kubuntu and Xubuntu Focal with language set to German on OS level and FF itself. locale returns de_DE.UTF-8 for everything except LC_ALL (empty).
Firefox converts the source text "Nr." to the numero sign "№" for display. This doesn't happen with FF on Windows and in Chromium on Kubuntu/Xubuntu.
Link to a sample page with a comment where the problem occurs ("Bestell-Nr." displays as "Bestell-№").
A similar behaviour was observed in LibreOffice, but for input and hinting at system locale settings, which should be correct in my case (see locale output above). Someone commented that he experiences the same problem in FF, but without a response.
This is caused by Ubuntu's font matching choice Nimbus Sans as replacement for Helvetica, which has ligature rules defined, including one to automatically convert "Nr." to "№".
Based on the answer by pLumo I re-routed the font matching by creating a
~/.config/fontconfig/fonts.conf with the following content, which fixes the problem (requires the package
ttf-mscorefonts-installer to be installed):
<?xml version='1.0'?> <!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> <fontconfig> <match> <test name="family"><string>Helvetica</string></test> <edit name="family" mode="assign" binding="strong"> <string>Arial</string> </edit> </match> </fontconfig>