Hola
Si es posible hacerlo, tanto con JavaScript, como con CSS, el principio es el mismo.
Aquí dejo un ejemplo sencillo
Código HTML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es">
<head>
<style type="text/css">
html,body { width: 100%; height: 100%; background-color: #fff; color: #000;}
#Base { width: 100%; height: 100%; background-color: inherit; color: inherit;}
input {color: inherit;}
#campo_1 {background-color: #0f0; color: #f00;}
#campo_2 {background-color: #0f0; color: #00f;}
</style>
<title>Pruebilla</title>
</head>
<body>
<div id="Base">
<form method="post" action="">
<p><input type="text" disabled="disabled" id="campo_1" value="texto de prueba" /></p>
<p><select>
<option>opcion 1</option>
<option disabled="disabled" id="campo_2">opcion 2</option>
</select></p>
</form>
</div>
</body>
</html>
Sin embargo, hay que comentar que el funcionamiento no es igual en todos los navegadores.
- Firefox (linux): Funciona como se espera.
- Explorer 6 (en wine): Funciona como se espera.
- Opera 9.25 (linux): No cambia el color del texto, pero si el de fondo.
Felicidad