Maxss:
Tu consulta es un poco vaga, el color cambia de rojo a verde y de verde a rojo con el click? Pero la acción que produce el boton, que es lo que hace?, y en función de esa acción, que?
Con javascript y css podes lograr el efecto, aqui te dejo un ejemplo
Código HTML:
Ver original<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es" > <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/javascript"> function cambiaBoton(boton){
var miBoton=document.getElementById(boton).style.backgroundColor;
if(miBoton=="green"){
document.getElementById(boton).style.backgroundColor="red";
} else {
document.getElementById(boton).style.backgroundColor="green";
}
}
div#boton_uno {
width: 100px;
height: 20px;
line-height: 20px;
text-align: center;
vertical-align: middle;
cursor: pointer;
color: #000;
}
<div style="background-color:green;" id="boton_uno" onclick="cambiaBoton('boton_uno');"> texto Boton
Con php, sesiones o cookies podrias determinar el estado y hacer que el color necesario aparezca, pero tendrías que ser más preciso, la alternancia por el solo hecho del click en algunos casos tiene sentido, pero en otros no
Saludos