I am trying to make shapes in the :before/ :after . this works fine in chrome but in Firefox. there is a small misalignment. and while printing that causes a small white space between the element and the :after selector. 

This is how it looks in print preview with Firefox

[![enter image description here](https://i.stack.imgur.com/78uIi.png)](https://i.stack.imgur.com/78uIi.png)

HTML

```
<div class="container">
    <div class="topbar">
      <div class="text">Text</div>
    </div>
 </div>

```

My CSS

```
/* Styles go here */

.container .topbar {
  height: 15px;
  background-color: #91C34F !important;
  width: 100%;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}

.container .topbar .text {
  position: relative;
  color: #fff !important;
  float: right;
  top: 3px;
  background-color: #91C34F !important;
  font-size: 16px;
  padding: 8px 80px;
}

.container .topbar .text:after {
  height: 0;
  content: "";
  display: block;
  position: absolute;
  top: -0.5px;
  left: -37px;
  border-right: 38px solid #91C34F !important;
  border-bottom: 34px solid transparent;
}

```

This is a plunk for above code <https://plnkr.co/edit/oll1ooap2mKC1EQo0n84?p=preview>.

How to make that align properly in all browsers?