ホームページ > ウェブフロントエンド > htmlチュートリアル > div + css マスク レイヤーでエッジの周りのグラデーションの特殊効果を実現_html/css_WEB-ITnose

div + css マスク レイヤーでエッジの周りのグラデーションの特殊効果を実現_html/css_WEB-ITnose

WBOY
リリース: 2016-06-21 09:01:01
オリジナル
1315 人が閲覧しました

サイト B で素敵な特殊効果を見つけました。それを真似して書きました。トリガーとなるイベントは非常に明確で、誰でも一目で理解できます。

効果は次のとおりです。

<!DOCTYPE html><html>    <head>        <meta charset="UTF-8">        <title>shade box</title>        <style type="text/css">            * {                margin: 0px;                padding: 0px;                box-sizing: border-box;                font-family: 'Microsoft Yahei';                font-size: 14px;            }            nav {                width: 500px;                margin: 10px auto;            }            .nav {                list-style: none;            }            .nav li {                float: left;                margin: 0px 5px;            }            .nav_element {                position: relative;            }                 /*过度时间为0.5s*/                       .shade {                position: absolute;                left: 0px;                top: 0px;                transition: 0.5s;                width: 0px;                height: 20px;                border-radius: 5px 5px;                /* 遮罩起始宽度为0 溢出隐藏*/                overflow: hidden;                z-index: 1;                visibility: hidden;            }            /*外廓事先已经画好 只是以为父容器宽度为0溢出隐藏不可视而已*/            .outer {                position: absolute;                left: 0px;                top: 0px;                width: 60px;                height: 20px;                border: 1px solid #00a1d6;                border-radius: 20px 20px;            }            /*z-index -1 让外廓可以覆盖此边线*/            .content {                border:1px solid #ccc;                width: 60px;                height: 20px;                border-radius: 20px 20px;                text-align: center;                line-height: 20px;                background-color: #fff;                position: relative;                z-index: -1;            }        </style>    </head>    <body>        <nav>            <ul>                <li>                    <div onmouseover="showOuter(this)" onmouseout="hideOuter(this)">                        <div>                            <div></div>                        </div>                        <p>首页</p>                    </div>                </li>                <li>                    <div onmouseover="showOuter(this)" onmouseout="hideOuter(this)">                        <div>                            <div></div>                        </div>                        <p>视频</p>                    </div>                </li>                <li>                    <div onmouseover="showOuter(this)" onmouseout="hideOuter(this)">                        <div>                            <div></div>                        </div>                        <p>新闻</p>                    </div>                </li>                <li>                    <div onmouseover="showOuter(this)" onmouseout="hideOuter(this)">                        <div>                            <div></div>                        </div>                        <p>画廊</p>                    </div>                </li>                <li>                    <div onmouseover="showOuter(this)" onmouseout="hideOuter(this)">                        <div>                            <div></div>                        </div>                        <p>直播</p>                    </div>                </li>                 <li>                    <div onmouseover="showOuter(this)" onmouseout="hideOuter(this)">                        <div>                            <div></div>                        </div>                        <p>One</p>                    </div>                </li>                 <li>                    <div onmouseover="showOuter(this)" onmouseout="hideOuter(this)">                        <div>                            <div></div>                        </div>                        <p>Enge</p>                    </div>                </li>            </ul>            <script type="text/javascript">                //获取某导航元素的遮罩子元素 修改其宽度                function showOuter(nav_element) {                    var shade = nav_element.getElementsByClassName('shade')[0];                    shade.style.visibility = 'visible';                    shade.style.width = '60px';                }                function hideOuter(nav_element) {                    var shade = nav_element.getElementsByClassName('shade')[0];                    shade.style.visibility = 'hidden';                    shade.style.width = '0px';                }            </script>        </nav>    </body></html>
ログイン後にコピー


ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート