AdminLTE v2.4.xからv3.0に移行する最初のステップは、Bootstrap 3のベースコードをBootstrap 4にアップグレードすることです。完全な手順はこちらです。ベースコードをアップグレードした後、マークアップを更新する必要があります。
AdminLTE v3.0以降、Bootstrap 4はAdminLTEのCSSファイルに完全に含まれています。Bootstrap CSSファイルbootstrap(.min).css
を読み込む必要はありませんが、Bootstrap JSファイルbootstrap(.min).js
は必要です。
メインヘッダーの最大の変更点は、ロゴがメインサイドバーに移動され、メインヘッダーにカラーバリエーションが追加されたことです。以下はすべての変更点です。
<a href="index2.html" class="logo">
が移動し、.main-sidebar
内の .brand-link
に再構築されました。<header class="main-header">
と <nav class="navbar navbar-static-top">
が <nav class="main-header navbar navbar-expand navbar-white navbar-light">
に統合されました。<a href="#" class="sidebar-toggle" data-toggle="push-menu" role="button"><span class="sr-only">Toggle navigation</span></a>
が <ul class="navbar-nav"><li class="nav-item"><a class="nav-link" data-widget="pushmenu" href="#"><i class="fas fa-bars"></i></a></li></ul>
に置き換えられました。<div class="navbar-custom-menu">
と <ul class="nav navbar-nav">
が <ul class="navbar-nav ml-auto">
に統合されました。上記のように、最大の変更点は、メインサイドバーにロゴが含まれるようになり、サイドバーにカラーバリエーションが追加されたことです。以下はすべての変更点です。
<aside class="main-sidebar">
が <aside class="main-sidebar sidebar-dark-primary">
に置き換えられました。<a href="index3.html" class="brand-link"><img src="dist/img/AdminLTELogo.png" alt="AdminLTE Logo" class="brand-image img-circle elevation-3" style="opacity: .8"><span class="brand-text font-weight-light">AdminLTE 3</span></a>
が古いロゴを置き換えます。<section class="sidebar">
が <div class="sidebar">
に置き換えられました。<div class="user-panel">...</div>
が <div class="user-panel mt-3 pb-3 mb-3 d-flex">...</div>
に置き換えられました。(省略部分は、英語原文を参照ください)
<nav class="mt-2">
が <ul class="sidebar-menu" data-widget="tree">
を囲むようになりました。<ul class="sidebar-menu" data-widget="tree">
が <ul class="nav nav-pills nav-sidebar flex-column" data-widget="treeview" role="menu">
に置き換えられました。<li class="header">
が <li class="nav-header">
に置き換えられました。<li>
に新しいクラス .nav-item
が必要です。<li> <a>
に新しいクラス .nav-link
が必要です。<li> <a> <i>
に新しいクラス .nav-icon
が必要です。<li> <a> <span>
が <p>
に置き換えられました。<span class="pull-right-container">
が削除されました。<i class="fa fa-angle-left pull-right"></i>
が <i class="right fas fa-angle-left"></i>
に置き換えられました。<small class="label pull-right bg-green">new</small>
が <span class="right badge badge-danger">New</span>
に置き換えられました。<li> <ul class="treeview-menu">
が <ul class="nav nav-treeview">
に置き換えられました。古いサンプルエントリ
<li>
<a href="pages/widgets.html">
<i class="fa fa-th"></i> <span>Widgets</span>
<span class="pull-right-container">
<small class="label pull-right bg-green">new</small>
</span>
</a>
</li>
新しいサンプルエントリ
<li class="nav-item">
<a href="pages/widgets.html" class="nav-link">
<i class="nav-icon fas fa-th"></i>
<p>
Widgets
<span class="right badge badge-danger">New</span>
</p>
</a>
</li>
古いサンプルエントリ(ツリーメニュー付き)
<li class="treeview">
<a href="#">
<i class="fa fa-dashboard"></i> <span>Dashboard</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
<ul class="treeview-menu">
<li class="active"><a href="index.html">
<i class="fa fa-circle-o"></i> Dashboard v1</a>
</li>
</ul>
</li>
新しいサンプルエントリ(ツリーメニュー付き)
<li class="nav-item">
<a href="#" class="nav-link">
<i class="nav-icon fas fa-tachometer-alt"></i>
<p>
Dashboard
<i class="right fas fa-angle-left"></i>
</p>
</a>
<ul class="nav nav-treeview">
<li class="nav-item">
<a href="index.html" class="nav-link active">
<i class="far fa-circle nav-icon"></i>
<p>Dashboard v1</p>
</a>
</li>
</ul>
</li>
コンテンツヘッダーの最大の変更点は、AdminLTEがここで.container-fluid
、.row
、.col-*
を使用するようになったこと、そしてパンくずリストのマークアップが変更されたことです。以下はすべての変更点です。
<section class="content-header">
が <div class="content-header">
に置き換えられました。<div class="container-fluid">
が <div class="content-header">
内に追加されました。<h1>
と <ol class="breadcrumb">
が <div class="row">
と <div class="col-sm-6">
内に再構築されました。<h1>
が <h1 class="m-0 text-dark">
に置き換えられました。<ol class="breadcrumb">
に新しいクラス .float-sm-right
が必要です。<ol class="breadcrumb"> <li>
に新しいクラス .breadcrumb-item
が必要です。古いコンテンツヘッダーのマークアップ
<section class="content-header">
<h1>
Dashboard
<small>Control panel</small>
</h1>
<ol class="breadcrumb">
<li><a href="#"><i class="fa fa-dashboard"></i> Home</a></li>
<li class="active">Dashboard</li>
</ol>
</section>
新しいコンテンツヘッダーのマークアップ
<div class="content-header">
<div class="container-fluid">
<div class="row mb-2">
<div class="col-sm-6">
<h1 class="m-0 text-dark">
Dashboard
<small>Control panel</small>
</h1>
</div>
<div class="col-sm-6">
<ol class="breadcrumb float-sm-right">
<li class="breadcrumb-item"><a href="#">Home</a></li>
<li class="breadcrumb-item active">Dashboard v1</li>
</ol>
</div>
</div>
</div>
</div>
コンテンツに変更はありません。<section class="content container-fluid">
を2つの要素に分割しただけです。
<section class="content">
<div class="container-fluid">
フッターには、右側divに小さな変更が1つだけあります。
<div class="pull-right hidden-xs">
が <div class="float-right d-none d-sm-inline">
に変更されました。v3.0以降のその他の小さなcss/htmlの変更点を以下に示します。
.label
が .badge
に名前変更されました。v3.0以降のその他の小さなJavaScriptの変更点を以下に示します。
data-toggle="*"
が data-widget="*"
に名前変更されました。data-card-widget="*"
になりました。