This is probably related to the same thing that's been around since browsers first started displaying images. Someone will have a more accurate description, but it's related to the browser's palette. Monitors can display millions of colors, and full palette images (such as a TFF) can store them; browsers do not. If your chosen color is outside the "web safe" palette, it will set it at the closest value it knows. If one system "moves" one color to a different place than another, there's your color shift.
You can try setting the background color to a value that is within the "web-safe" palette. Even if you get it to cooperate on your system by tweaking the color palettes, the average user won't know how to do this (hence, being able to see your color shift is a GOOD thing.)