Suppose I have a div with some text in it
Title&
Not sure, if that's what you want, but you could make the inner div an inline-element. This way the border should be wrapped only around the text. Even better than that is to use an inline-element for your title.
Solution 1
<div id="page" style="width: 600px;">
<div id="title" style="display: inline; border...">Title</div>
</div>
Solution 2
<div id="page" style="width: 600px;">
<span id="title" style="border...">Title</span>
</div>
Edit: Strange, SO doesn't interpret my code-examples correctly as block, so I had to use inline-code-method.
Try this and see if you get what you are aiming for:
<div id='page' style='width: 600px'>
<h1 style='border:2px black solid; font-size:42px; width:fit-content; width:-webkit-fit-content; width:-moz-fit-content;'>Title</h1>
</div>
This is because h1
is a block element, so it will extend across the line (or the width you give).
You can make the border go only around the text by setting display:inline
on the h1
Example: http://jsfiddle.net/jonathon/XGRwy/1/
Try putting it in a span element:
<div id='page' style='width: 600px'>
<h1><span style='border:2px black solid; font-size:42px;'>Title</span></h1>
</div>