You can always use JavaScript check if the browser is Safari, and if it is, just minimize the font sizes by 1px
. I know that this is not a conventional way of doing things, but as long as it works:
var isSafari = /constructor/i.test(window.HTMLElement) || (function (p) {
return p.toString() === "[object SafariRemoteNotification]";
})(!window['safari'] || (typeof safari !== 'undefined' && safari.pushNotification));
This method was taken from Javascript - How To Detect Browsers
And its explanation:
Safari: A unique naming pattern in its naming of constructors. This is the least durable method of all listed properties and guess what? In Safari 9.1.3 it was fixed. So we are checking against SafariRemoteNotification
, which was introduced after version 7.1, to cover all Safaris from 3.0 and upwards.
In order to change font sizes, there is a deprecated method that could still work:
document.body.fontSize(-1);
If not, try CSS Relative Font Sizes:
document.body.style.fontSize = ""; //Either Enter Percentages (90%) or EM
//EM Will Automatically Change Font-Size According To Browser
//%-ages Will Change Values Through Math (110% of 16px)
Hope that helps!