Edit in JSFiddle

<!doctype html>
<html ng-app>
<head>
 <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.1/angular.min.js"></script>
</head>  
<body>
    <form name="demoForm" novalidate>
        必填:<input type="text" name="input1" ng-model="model1" required />
        <br />
        数字(10~15):<input type="number" name="input2" ng-model="model2" min="10" max="15" />
        <br />
        url(length<=20):<input type="url" name="input3" ng-model="model3" maxlength="20" />
        <br />
        <input type="submit" ng-disabled="demoForm.$invalid" />
    </form>  
</body>
<html>
input.ng-pristine {
    background-color: white;
}
input.ng-dirty {
    background-color: lightyellow;
}
input.ng-valid {
    background-color: lightgreen;
}
input.ng-invalid {
    background-color: pink;
}