This HTML/CSS snippet creates an HR element with text in the middle of the line. The text is supplied in the data-* attribute of the HR element.
You can divide with any text you like.
For instance this...
...this...
...even this!
body { text-align: center; background: #fcfcfa; color: #818078; font-family: Futura, sans-serif; } .container { max-width: 50%; margin: 40px auto; } .hr-text { line-height: 1em; position: relative; outline: 0; border: 0; color: black; text-align: center; height: 1.5em; opacity: .5; &:before { content: ''; // use the linear-gradient for the fading effect // use a solid background color for a solid bar background: linear-gradient(to right, transparent, #818078, transparent); position: absolute; left: 0; top: 50%; width: 100%; height: 1px; } &:after { content: attr(data-content); position: relative; display: inline-block; color: black; padding: 0 .5em; line-height: 1.5em; // this is really the only tricky part, you need to specify the background color of the container element... color: #818078; background-color: #fcfcfa; } }