Segun yo Safari si soporta la validacion, pero no impide el submit.
Por lo que podrias hacer un workaround con javascript, algo como:    
Código Javascript
:
Ver original// se obtiene el formulario y el campo a validar
var formulario = document.getElementsByTagName('form')[0],
    campo = document.getElementsByTagName('input')[0];
 
// se quita validacion para que se comporte igual en todos los browser
formulario.noValidate = true;
 
// se agrega listener en el submit y se checa por campo valido y campo activo
formulario.addEventListener('submit', function(event) {
        if (!campo.disabled && !event.target.checkValidity()) {
            event.preventDefault();
            alert('No Valido');
        }else{
           alert('formulario enviado');
        }
    }, false);
  
El required en el campo sigue siendo necesario, ya que es la forma de identificar si es valido con checkValidity. 
Te dejo un fiddle como demo 
http://jsfiddle.net/srLckfg3/ 
Puedes agregar el disabled al campo y probar que cuando esta inactivo se manda sin validar.