It might be a little cleaner to wrap the floats in a div and use a the clearfix
<div class="clearfix">
<h4 class="wrap-title">Name</h4>
<button class="btn btn-primary btn-xs title-button" ng-click="uploadNewImage()">
<span class="glyphicon glyphicon-upload"></span> Upload
</button>
</div>
<p>{{venue.name}}</p>
here the clearfix css
.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }
Here is the explanation given in the html5 boilerplate
Clearfix: contain floats For modern browsers
- The space content is one way to avoid an Opera bug when the
contenteditable
attribute is included anywhere else in the document. Otherwise it causes space to appear at the top and bottom of elements that receive theclearfix
class. - The use of
table
rather thanblock
is only necessary if using:before
to contain the top-margins of child elements.