ngPlaceholder

HTML

<script src="http://code.angularjs.org/1.1.0/angular.min.js"></script>
<div ng-app="practice" ng-controller="practiceCtrl">
    <input ng-placeholder='test'/>
</div>

CSS

form {
    width: 80%;
    min-height: 7%;
    padding: 1rem;
    margin-left: 9%;
    background-color: hsl(0,0%,0%);
}

header {
    color: white;
    padding-bottom: 1rem;
    font-size: 2rem;
    text-align: center;
}

input[type='text'] {
    width: 75%;
    float: left;
    padding: .52rem 0;
    font-size: 1.2rem
}

.complete {
	text-decoration: line-through;
}

.submit {
    width:21%;
    float: right;
    margin-left: 1%;
    background-color: white;
    text-align: center;
    padding: .77rem 0;
}

.submit:hover {
	cursor: pointer;
	background-color: grey;
}

.list {
    margin-top: 4rem;
	text-align: left;
}

.list > div {
	background-color: white;
	border-bottom: 1px solid black;
    padding: .52rem;
    font-size: 1.2rem;
}

input[type='checkbox'] {
	
}

JavaScript

var module = angular.module('practice', []);

module.controller('practiceCtrl', function($scope, $timeout) { 
	$scope.test = 'whatever';
    
    $timeout(function() {
        $scope.test = 'Way it works';
    },2000);

})

.directive('ngPlaceholder', function() {
  return {
    restrict: 'A',
    scope: {
      placeholder: '=ngPlaceholder'
    },
    link: function(scope, elem, attr) {
      scope.$watch('placeholder',function() {
        elem[0].placeholder = scope.placeholder;
      });
    }
  }
});