CSS3の:targetを使ってタブを作る

CSS 3のセレクタ「:target」でタブメニューをつくる - builder by ZDNet Japan
これを見ててもうちょっと簡単にできる方法を思いつきました。

<html>
    <head>
        <meta http-equiv="Content-type" content="text/html; charset=utf-8">
        <title>CSS3 :targetを利用してタブを作る</title>
        <style type="text/css">
            a{
                text-decoration:none;
                color: #000000;
            }
            #tabs a{
                border-top: 1px solid #0000ff;
                border-left: 1px solid #0000ff;
                border-right: 1px solid #0000ff;
                margin: 0;
                padding: 3px;
                border-top-right-radius: 5px;
                border-top-left-radius: 5px;
            }
            .content {
                border: 1px solid #0000ff;
                position: absolute;
            }
            .content:not(:target){
                display: none;
            }
        </style>
    </head>
    <body>
        <h2>CSS3 :targetを利用してタブを作る</h2>
        <div id="tabs">
            <a href="#tab1">タブ1</a>
            <a href="#tab2">タブ2</a>
        </div>
        <div id="tab1" class="content">
            <p>タブ1の中身</p>
        </div>
        <div id="tab2" class="content">
            <p>タブ2の中身</p>
        </div>
    </body>
</html>

上記の記事では:targetで指定された要素をz-indexを高くして表示を上にしていますが、この方法はそれぞれのタブの中身にcontentというclass属性をつけて、:targetではないcontentを非表示にしています( .content:not(:target)の部分)。結果、:targetのcontentだけ表示されるようにしています。