<!DOCTYPE html>
<html ng-app="myApp">

<head>
  <title>ngMessages animation</title>
  <link href="style.css" rel="stylesheet" />
</head>

<body>
  <div>
    <form name="messageAnimationForm">
      <label for="modelSample">Password validation input</label>
      <div>
        <input ng-model="ngModelSample" id="modelSample" name="modelSample" type="password" ng-pattern="/^\d+$/" ng-minlength="5" ng-maxlength="10" required class="ngMessageSample" />
        <div ng-messages="messageAnimationForm.modelSample.$error" class="ngMessagesClass" ng-messages-multiple>
          <div ng-message="pattern" class="ngMessageClass">* This field is invalid, only numbers are allowed</div>
          <div ng-message="minlength" class="ngMessageClass">* It's mandatory at least 5 characters</div>
          <div ng-message="maxlength" class="ngMessageClass">* It's mandatory at most 10 characters</div>
        </div>
      </div>
    </form>
  </div>
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.0/angular.min.js"></script>
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.0/angular-animate.min.js"></script>
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.0/angular-messages.min.js"></script>
<script src="script.js"></script>
</body>

</html>
var app = angular.module('myApp', ['ngAnimate', 'ngMessages']);
.ngMessagesClass {
    height: 50px;
    width: 350px;
}

.ngMessagesClass.ng-active-add {
    transition: 0.3s linear all;
    background-color: red;
}

.ngMessagesClass.ng-active {
    background-color: red;
}

.ngMessagesClass.ng-inactive-add {
    transition: 0.3s linear all;
    background-color: white;
}

.ngMessagesClass.ng-inactive {
    background-color: white;
}

.ngMessageClass {
    color: white;
}

.ngMessageClass.ng-enter {
    transition: 0.3s linear all;
    color: transparent;
}

.ngMessageClass.ng-enter-active {
    color: white;
}

.ngMessageClass.ng-leave {
    transition: 0.3s linear all;
    color: white;
}

.ngMessageClass.ng-leave-active {
    color: transparent;
}
For the ngMessages directive, that is, the container of the ngMessage directives, we
included an animation on ng-active-add that changes the container background
color from white to red and ng-inactive-add that does the opposite, changing the
background color from red to white.