đŸ’Ÿ Archived View for gemini.ctrl-c.club â€ș ~ssb22 â€ș css.gmi captured on 2024-08-18 at 17:57:32. Gemini links have been rewritten to link to archived content

View Raw

More Information

âŹ…ïž Previous capture (2024-03-21)

🚧 View Differences

-=-=-=-=-=-=-

Stylesheets for low vision

Many modern Web browsers allow users to set their own CSS stylesheets for accessibility purposes.  It can be difficult to write a comprehensive accessibility stylesheet by hand, especially if you want to work around browser bugs and the difficulties posed by complex websites.  So I made a program to generate long CSS files with workarounds for many problems.

If you are a programmer, you can adjust the Python code to your needs (works in both Python 2 and Python 3).  Alternatively, you can try one of the presets linked from this page.

the Python code

Download pre-generated low-vision stylesheets

unchanged yellow on black

unchanged green on black

unchanged white on black

unchanged soft greys

unchanged black on linen

unchanged black on white

18 pixels yellow on black

18px green on black

18px white on black

18px soft greys

18px black on linen

18px black on white

20 pixels yellow on black

20px green on black

20px white on black

20px soft greys

20px black on linen

20px black on white

25 pixels yellow on black

25px green on black

25px white on black

25px soft greys

25px black on linen

25px black on white

30 pixels yellow on black

30px green on black

30px white on black

30px soft greys

30px black on linen

30px black on white

35 pixels yellow on black

35px green on black

35px white on black

35px soft greys

35px black on linen

35px black on white

40 pixels yellow on black

40px green on black

40px white on black

40px soft greys

40px black on linen

40px black on white

45 pixels yellow on black

45px green on black

45px white on black

45px soft greys

45px black on linen

45px black on white

50 pixels yellow on black

50px green on black

50px white on black

50px soft greys

50px black on linen

50px black on white

60 pixels yellow on black

60px green on black

60px white on black

60px soft greys

60px black on linen

60px black on white

75 pixels yellow on black

75px green on black

75px white on black

75px soft greys

75px black on linen

75px black on white

100 pixels yellow on black

100px green on black

100px white on black

100px soft greys

100px black on linen

100px black on white

(above stylesheets generated by version 0.9938)

Size “unchanged” lacks size-related layout changes; this can be useful if you do not need large print, or your monitor is big enough for the browser’s built-in zoom controls to be enough, but you still need to change the colours (see advantages of dark backgrounds).

What is the best pixel size?

You could just experiment, but if you frequently change between different setups and/or have variable sight then it might help to know how to choose a size without constantly re-experimenting:

1. You need to know the best size in points (36, 48 or whatever) for text you read at the distance of the screen.

1.1. First you need to know your normal distance to the screen.  You can move the screen nearer, but the limits will vary with the type of mounting and the size of your keyboard, desk, chair, etc; you need to be aware of this variation if you use different computers.  Also, if you have variable sight, remember to allow yourself room to get even nearer when your sight is worse (and without hurting your posture too much), which is usually easier than temporary size changes.

1.2. Divide the screen’s distance by your normal reading distance for printed text (both measured from your eyes to the text itself, ignoring any magnifying device in between), and multiply by the size in points of the printed text you prefer to read.

1.3. If you normally use a magnifier for printed text but cannot use it for the screen, multiply your answer by the scale factor of this magnifier.

1.4. If you have a full-screen magnifier (fresnel lens) permanently mounted to the screen, then divide your answer by the scale factor of this magnifier.

1.5. Do not try to work out your size by setting the “point size” on the screen of a wordprocessor or similar, because that might not be calibrated correctly.

2. Let P be your on-screen point size, H and V be the horizontal and vertical resolution of your monitor, and D be its size in inches (measure across the diagonal if you don’t know, and if you’re on an old CRT monitor then you should subtract about an inch from the rated figure whereas TFT monitors’ figures are OK as they are).  Your pixel size is the square root of (H*H + V*V), divided by D, multiplied by P and divided by 72.  (If your monitor has the old standard 4x3 aspect ratio then this simplifies to P*V/D * 5/216.)

3. With some browsers, you’ll need to divide this by the browser’s setting of window.devicePixelRatio .

How to install a stylesheet

Save the stylesheet to a file on your disk, and:

togglecss script

For other setups (including some mobiles) you can try Web Adjuster; for demonstration purposes there is an installation of Web Adjuster with these stylesheets at large-print-websites.appspot.com.

Legal

All material © Silas S. Brown unless otherwise stated. Android is a trademark of Google LLC. Firefox is a registered trademark of The Mozilla Foundation. Google is a trademark of Google LLC. Linux is the registered trademark of Linus Torvalds in the U.S. and other countries. Python is a trademark of the Python Software Foundation. Safari is a registered trademark of Apple Inc. Windows is a registered trademark of Microsoft Corp. Any other trademarks I mentioned without realising are trademarks of their respective holders.