Saetl.net

Simple And Easy TempLate

Vertical Responsive Menuの使い方

  1. 下記ページ右下の 「Download ZIP」 よりファイル1式をダウンロード。
  2. ダウンロードしたファイルを任意の場所にコピー。
    ファイル構成
  3. 動作させるファイル(サンプルではindex.html)にコードを記述。
    パスは上記ファイル構成の場合なので環境にあわせて変更>
    ・head部分に外部化したcssファイルを読み込ませるためのコードを記述。
     <head>
    <!--WebフォントGoogle web fontsをCDN で利用-->
    <link href="https://fonts.googleapis.com/css?family=Roboto:400,700,500" rel="stylesheet">
    <!--アイコンWebフォントFont AwesomeをCDN で利用-->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
    <!--ダウンロードしたcssファイル-->
    <link href="css/vertical-responsive-menu.min.css" rel="stylesheet">
    </head>
    

    サンプルのcssコード(サンプルのcssは改変しています)

    /*ページ設定部分(style.cssなどで設定していれば削除する)*/
    body, div, dl, dt, dd, ul, ol, li, h1 {
    	margin: 0;
    	padding: 0;
    	border: 0;
    }
    header {
    	height: 50px;
    	line-height: 50px;
    	margin: 0;
    	padding: 0;
    	background: #D8D6D6;
    	border-bottom: solid 2px #807B7B;
    }
    h1 {
    	font-size: 1.5em;
    	padding-left: 20px;
    }
    #container {
    	width: 100%;
    }
    
    @media screen and (max-width: 768px) {
    h1 {
    	font-size: 1em;
    }
    }
    /*ここまでページ設定部分*/
    
    
    /*ここからVertical Responsive Menuの設定*/
    
    .collapse_menu .collapse_menu--icon, .vertical_nav {
    	-moz-transition: all .3s ease-out;
    	-webkit-transition: all .3s ease-out;
    	transition: all .3s ease-out
    }
    * {
    	box-sizing: border-box
    }
    :active, :focus {
    	outline: 0
    }
    .toggle_menu {
    	display: block;
    	float: left;
    	width: 50px;
    	height: 50px;
    	line-height: 50px;
    	padding: 0;
    	background: 0 0;
    	border: 0;
    	text-align: center;
    	cursor: pointer
    }
    .toggle_menu i {
    	display: block;
    	font-size: 28px
    }
    .vertical_nav {
    	position: absolute;
    	left: -200px;
    	top: 50px;
    	bottom: 0;
    	width: 200px;
    	background: #f6f6f6
    }
    .vertical_nav__closed {
    	left: -200px!important
    }
    .vertical_nav__opened {
    	left: 0!important;
    	box-shadow: rgba(0,0,0,.4)-30px 0 30px 30px
    }
    .menu {
    	position: absolute;
    	top: 20px;
    	bottom: 40px;
    	overflow-y: auto;
    	width: 100%;
    	margin: 0;
    	padding: 0;
    	list-style-type: none
    }
    .menu--item {
    	position: relative;
    	min-height: 40px;
    	line-height: 40px
    }
    .menu--item__has_sub_menu .menu--link:after {
    	position: absolute;
    	top: 0;
    	right: 15px;
    	height: 40px;
    	line-height: 40px;
    	font-family: FontAwesome;
    	content: "\f0d7"
    }
    .menu--subitens__opened {
    	background: #e9e9e9
    }
    .menu--subitens__opened .menu--link {
    	color: #000
    }
    .menu--subitens__opened .sub_menu {
    	display: block
    }
    .menu--link {
    	display: block;
    	overflow: hidden;
    	font-size: .875rem;
    	text-decoration: none;
    	color: #666;
    	font-weight: 400;
    	white-space: nowrap;
    	cursor: pointer
    }
    .menu--link:hover, .menu--link:hover .menu--label {
    	color: #000;
    	background: #ddd
    }
    .menu--icon {
    	display: block;
    	float: left;
    	width: 50px;
    	height: 40px;
    	line-height: 40px;
    	font-size: 20px
    }
    .menu--label {
    	display: block;
    	height: 40px;
    	line-height: 40px
    }
    .sub_menu {
    	display: none;
    	overflow: hidden;
    	padding-left: 0;
    	list-style: none
    }
    .sub_menu--link {
    	display: block;
    	padding-left: 50px;
    	padding-right: 16px;
    	font-size: .875rem;
    	color: #666;
    	text-decoration: none
    }
    .sub_menu--link:hover {
    	color: #000;
    	background: #ddd
    }
    .sub_menu--link__active {
    	color: #000;
    	font-weight: 500
    }
    .collapse_menu {
    	display: none
    }
    
    @media (min-width:992px) {
    .vertical_nav {
    	left: 0
    }
    .toggle_menu {
    	display: none
    }
    .vertical_nav__minify {
    	width: 50px
    }
    .vertical_nav__minify .menu {
    	overflow: visible
    }
    .vertical_nav__minify .menu--label {
    	display: none;
    	position: absolute;
    	top: 0;
    	left: 50px;
    	width: 150px;
    	padding-left: 16px;
    	padding-right: 16px;
    	background: #e9e9e9;
    	font-weight: 500
    }
    .vertical_nav__minify .menu--item__has_sub_menu .menu--link:after {
    	content: ""
    }
    .vertical_nav__minify .menu--subitens__opened .menu--label, .vertical_nav__minify .menu--subitens__opened .sub_menu {
    	display: block
    }
    .vertical_nav__minify .sub_menu {
    	position: absolute;
    	top: 40px;
    	left: 50px;
    	width: 150px;
    	background: #e9e9e9
    }
    .vertical_nav__minify .sub_menu--link {
    	padding-left: 16px
    }
    .vertical_nav__minify .collapse_menu--icon {
    	-webkit-transform: rotate(180deg)
    }
    .collapse_menu {
    	position: absolute;
    	bottom: 0;
    	display: block;
    	width: 100%;
    	height: 40px;
    	line-height: 40px;
    	padding: 0;
    	border: 0;
    	border-top: 1px solid #e6e6e6;
    	background: #f6f6f6;
    	color: #666;
    	font-size: .875rem;
    	text-align: left;
    	cursor: pointer
    }
    .collapse_menu:hover {
    	color: #000;
    	background: #ddd
    }
    .collapse_menu .collapse_menu--icon {
    	display: block;
    	float: left;
    	width: 50px;
    	height: 40px;
    	line-height: 40px;
    	font-size: 20px
    }
    .collapse_menu .collapse_menu--icon:before {
    	content: "\f053"
    }
    .collapse_menu .collapse_menu--label {
    	display: block;
    	height: 40px;
    	line-height: 40px
    }
    }
    
    
    ・</body>の直前にjsファイルを読み込ませるためのコードを記述。
    <!--ダウンロードしたjsファイル-->
    <script src="js/vertical-responsive-menu.min.js"></script>
    </body>
    
    ・<body></body>内にコードを記述
    <header class="header clearfix">
      <button type="button" id="toggleMenu" class="toggle_menu"> <i class="fa fa-bars"></i> </button>
      <h1>Vertical Responsive Menu</h1>
    </header>
    <nav class="vertical_nav">
      <ul id="js-menu" class="menu">
        <li class="menu--item  menu--item__has_sub_menu">
          <label class="menu--link" title="Item 1"> <i class="menu--icon  fa fa-fw fa-user"></i> <span class="menu--label">Item 1</span> </label>
          <ul class="sub_menu">
            <li class="sub_menu--item"> <a href="http://google.com" target="_blank" class="sub_menu--link sub_menu--link__active">Submenu</a> </li>
            <li class="sub_menu--item"> <a href="#" class="sub_menu--link">Submenu</a> </li>
            <li class="sub_menu--item"> <a href="#" class="sub_menu--link">Submenu</a> </li>
          </ul>
        </li>
        <li class="menu--item"> <a href="#" class="menu--link" title="Item 2"> <i class="menu--icon  fa fa-fw fa-briefcase"></i> <span class="menu--label">Item 2</span> </a> </li>
        <li class="menu--item"> <a href="#" class="menu--link" title="Item 3"> <i class="menu--icon  fa fa-fw fa-cog"></i> <span class="menu--label">Item 3</span> </a> </li>
        <li class="menu--item  menu--item__has_sub_menu">
          <label class="menu--link" title="Item 4"> <i class="menu--icon  fa fa-fw fa-database"></i> <span class="menu--label">Item 4</span> </label>
          <ul class="sub_menu">
            <li class="sub_menu--item"> <a href="#" class="sub_menu--link">Submenu</a> </li>
            <li class="sub_menu--item"> <a href="#" class="sub_menu--link">Submenu</a> </li>
            <li class="sub_menu--item"> <a href="#" class="sub_menu--link">Submenu</a> </li>
          </ul>
        </li>
        <li class="menu--item"> <a href="#" class="menu--link" title="Item 5"> <i class="menu--icon  fa fa-fw fa-globe"></i> <span class="menu--label">Item 5</span> </a> </li>
      </ul>
      <button id="collapse_menu" class="collapse_menu"> <i class="collapse_menu--icon  fa fa-fw"></i> <span class="collapse_menu--label">Recolher menu</span> </button>
    </nav>
    

    サンプルのhtmlコード

    <!DOCTYPE html>
    <html lang="ja">
    <head>
    <meta charset="utf-8" />
    <title>Vertical Responsive Menu</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <!--WebフォントGoogle web fontsをCDN で利用-->
    <link href="https://fonts.googleapis.com/css?family=Roboto:400,700,500" rel="stylesheet">
    <!--アイコンWebフォントFont AwesomeをCDN で利用-->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
    <!--ダウンロードしたcssファイル-->
    <link href="css/vertical-responsive-menu.min.css" rel="stylesheet">
    </head>
    
    <body>
    <header class="header clearfix">
      <button type="button" id="toggleMenu" class="toggle_menu"> <i class="fa fa-bars"></i> </button>
      <h1>Vertical Responsive Menu</h1>
    </header>
    <nav class="vertical_nav">
      <ul id="js-menu" class="menu">
        <li class="menu--item  menu--item__has_sub_menu">
          <label class="menu--link" title="Item 1"> <i class="menu--icon  fa fa-fw fa-user"></i> <span class="menu--label">Item 1</span> </label>
          <ul class="sub_menu">
            <li class="sub_menu--item"> <a href="http://google.com" target="_blank" class="sub_menu--link sub_menu--link__active">Submenu</a> </li>
            <li class="sub_menu--item"> <a href="#" class="sub_menu--link">Submenu</a> </li>
            <li class="sub_menu--item"> <a href="#" class="sub_menu--link">Submenu</a> </li>
          </ul>
        </li>
        <li class="menu--item"> <a href="#" class="menu--link" title="Item 2"> <i class="menu--icon  fa fa-fw fa-briefcase"></i> <span class="menu--label">Item 2</span> </a> </li>
        <li class="menu--item"> <a href="#" class="menu--link" title="Item 3"> <i class="menu--icon  fa fa-fw fa-cog"></i> <span class="menu--label">Item 3</span> </a> </li>
        <li class="menu--item  menu--item__has_sub_menu">
          <label class="menu--link" title="Item 4"> <i class="menu--icon  fa fa-fw fa-database"></i> <span class="menu--label">Item 4</span> </label>
          <ul class="sub_menu">
            <li class="sub_menu--item"> <a href="#" class="sub_menu--link">Submenu</a> </li>
            <li class="sub_menu--item"> <a href="#" class="sub_menu--link">Submenu</a> </li>
            <li class="sub_menu--item"> <a href="#" class="sub_menu--link">Submenu</a> </li>
          </ul>
        </li>
        <li class="menu--item"> <a href="#" class="menu--link" title="Item 5"> <i class="menu--icon  fa fa-fw fa-globe"></i> <span class="menu--label">Item 5</span> </a> </li>
      </ul>
      <button id="collapse_menu" class="collapse_menu"> <i class="collapse_menu--icon  fa fa-fw"></i> <span class="collapse_menu--label">Recolher menu</span> </button>
    </nav>
    <a href="https://saetl.net/javascriptsample.html"> <span style="position:fixed; right:10px; bottom:10px; font-size:1em; color:#000;">Javascriptサンプル集 - Saetl.net</span> </a>
    <!--ダウンロードしたjsファイル-->
    <script src="js/vertical-responsive-menu.min.js"></script>
    </body>
    </html>
  4. ファイル1式をサーバーにアップロードして設置完了。
    サンプル