html - 如何在多个 HTML 文件中重用 HTML 代码
问题描述
希望一切都好。
我在互联网上尝试了许多解决方案,但没有得到我想要的结果。
我在 html 文件中编写引导代码。我adminlte.io
为此目的使用模板。
我只需要更改该仪表板的正文文本,所有其他内容将在整个网页中保持不变。如何在代码之前和之后重用。
我没有使用 php 或任何其他框架,只是简单的 html 文件,或者如果需要准确的结果,我可以使用 JS 文件....提前谢谢你!
可重复使用的上层代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>AB1 Dashboard</title>
<!-- Tell the browser to be responsive to screen width -->
<meta content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" name="viewport">
<!-- Bootstrap 3.3.7 -->
<link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.min.css">
<!-- Font Awesome -->
<link rel="stylesheet" href="bower_components/font-awesome/css/font-awesome.min.css">
<!-- Ionicons -->
<link rel="stylesheet" href="bower_components/Ionicons/css/ionicons.min.css">
<!-- Theme style -->
<link rel="stylesheet" href="dist/css/AdminLTE.min.css">
<!-- AdminLTE Skins. Choose a skin from the css/skins
folder instead of downloading all of them to reduce the load. -->
<link rel="stylesheet" href="dist/css/skins/_all-skins.min.css">
<!-- Morris chart -->
<link rel="stylesheet" href="bower_components/morris.js/morris.css">
<!-- jvectormap -->
<link rel="stylesheet" href="bower_components/jvectormap/jquery-jvectormap.css">
<!-- Date Picker -->
<link rel="stylesheet" href="bower_components/bootstrap-datepicker/dist/css/bootstrap-datepicker.min.css">
<!-- Daterange picker -->
<link rel="stylesheet" href="bower_components/bootstrap-daterangepicker/daterangepicker.css">
<!-- bootstrap wysihtml5 - text editor -->
<link rel="stylesheet" href="plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.min.css">
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->
<!-- Google Font -->
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700,300italic,400italic,600italic">
</head>
<body class="hold-transition skin-blue sidebar-mini">
<div class="wrapper">
<header class="main-header">
<!-- Logo -->
<a href="#" class="logo">
<!-- mini logo for sidebar mini 50x50 pixels -->
<span class="logo-mini"><b>WOW</b></span>
<!-- logo for regular state and mobile devices -->
<span class="logo-lg"><b>WOW</b> | Admin panel</span>
</a>
<!-- Header Navbar: style can be found in header.less -->
<nav class="navbar navbar-static-top">
<!-- Sidebar toggle button-->
<a href="#" class="sidebar-toggle" data-toggle="push-menu" role="button">
<span class="sr-only">Toggle navigation</span>
</a>
<div class="navbar-custom-menu">
<ul class="nav navbar-nav">
<!-- User Account: style can be found in dropdown.less -->
<li class="dropdown user user-menu">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
<img src="dist/img/user2-160x160.jpg" class="user-image" alt="User Image">
<span class="hidden-xs">Alexander Pierce</span>
</a>
<ul class="dropdown-menu">
<!-- User image -->
<li class="user-header">
<img src="dist/img/user2-160x160.jpg" class="img-circle" alt="User Image">
<p>
Alexander Pierce - Administrator
<small>Member since Nov. 2020</small>
</p>
</li>
<!-- Menu Footer-->
<li class="user-footer">
<div class="pull-left">
<a href="#" class="btn btn-default btn-flat">Profile</a>
</div>
<div class="pull-right">
<a href="#" class="btn btn-default btn-flat">Sign out</a>
</div>
</li>
</ul>
</li>
</ul>
</div>
</nav>
</header>
<!-- Left side column. contains the logo and sidebar -->
<aside class="main-sidebar">
<!-- sidebar: style can be found in sidebar.less -->
<section class="sidebar">
<!-- Sidebar user panel -->
<div class="user-panel">
<div class="pull-left image">
<img src="dist/img/user2-160x160.jpg" class="img-circle" alt="User Image">
</div>
<div class="pull-left info">
<p>Admin user</p>
<a href="#"><i class="fa fa-circle text-success"></i> Online</a>
</div>
</div>
<!-- sidebar menu: : style can be found in sidebar.less -->
<ul class="sidebar-menu" data-widget="tree">
<li class="header">MAIN NAVIGATION</li>
<li class="active 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>User dashboard</a></li>
</ul>
</li>
<li><a href="#"><i class="fa fa-user"></i> <span>Users</span></a></li>
<li><a href="#"><i class="fa fa-map-marker"></i> <span>Hunt</span></a></li>
<li><a href="#"><i class="fa fa-exclamation-circle"></i> <span>Challenge</span></a></li>
<li><a href="#"><i class="fa fa-briefcase"></i> <span>Corporate request</span></a></li>
</ul>
</section>
<!-- /.sidebar -->
</aside>
""这里我想在不同的文件中使用不同的代码""
可重用的下层代码:
<!-- /.content-wrapper -->
<footer class="main-footer">
<div class="pull-right hidden-xs">
<b>Version</b> 2.4.0
</div>
<strong>Copyright © 2020 <a href="#">WOW.</a></strong> All rights
reserved.
</footer>
</div>
<!-- ./wrapper -->
<!-- jQuery 3 -->
<script src="bower_components/jquery/dist/jquery.min.js"></script>
<!-- jQuery UI 1.11.4 -->
<script src="bower_components/jquery-ui/jquery-ui.min.js"></script>
<!-- Resolve conflict in jQuery UI tooltip with Bootstrap tooltip -->
<script>
$.widget.bridge('uibutton', $.ui.button);
</script>
<!-- Bootstrap 3.3.7 -->
<script src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
<!-- Morris.js charts -->
<script src="bower_components/raphael/raphael.min.js"></script>
<script src="bower_components/morris.js/morris.min.js"></script>
<!-- Sparkline -->
<script src="bower_components/jquery-sparkline/dist/jquery.sparkline.min.js"></script>
<!-- jvectormap -->
<script src="plugins/jvectormap/jquery-jvectormap-1.2.2.min.js"></script>
<script src="plugins/jvectormap/jquery-jvectormap-world-mill-en.js"></script>
<!-- jQuery Knob Chart -->
<script src="bower_components/jquery-knob/dist/jquery.knob.min.js"></script>
<!-- daterangepicker -->
<script src="bower_components/moment/min/moment.min.js"></script>
<script src="bower_components/bootstrap-daterangepicker/daterangepicker.js"></script>
<!-- datepicker -->
<script src="bower_components/bootstrap-datepicker/dist/js/bootstrap-datepicker.min.js"></script>
<!-- Bootstrap WYSIHTML5 -->
<script src="plugins/bootstrap-wysihtml5/bootstrap3-wysihtml5.all.min.js"></script>
<!-- Slimscroll -->
<script src="bower_components/jquery-slimscroll/jquery.slimscroll.min.js"></script>
<!-- FastClick -->
<script src="bower_components/fastclick/lib/fastclick.js"></script>
<!-- AdminLTE App -->
<script src="dist/js/adminlte.min.js"></script>
<!-- AdminLTE dashboard demo (This is only for demo purposes) -->
<script src="dist/js/pages/dashboard.js"></script>
<!-- AdminLTE for demo purposes -->
<script src="dist/js/demo.js"></script>
</body>
</html>
谢谢您的答复。
解决方案
您可以在三个地方执行此操作:
当您构建站点时,在部署之前/期间。
这是您获取已编写的源代码(以及您想要从例如数据库中提取的任何数据)并将其转换为适合复制到您的服务器然后发送的代码(和内容)的步骤到浏览器。
您可以为此使用任何您喜欢的编程语言。通常,您会使用模板库并从一系列源文件中注入内容。
有许多静态站点生成器旨在执行此操作。Jamstack的列表更长(尽管解释较少)。
在服务器上
您拒绝了 PHP,但它或其他服务器端语言是此类问题的常见选择,无论是使用一组简单的包含,还是使用模板稍微智能一些或完整的大型 CMS。
在客户端
使用客户端 JS通过 HTTP 提取内容,然后将其注入页面是一个相当简单的选择,但对搜索引擎最不友好,并且最有可能因客户端问题(例如单个文件或广告拦截器的网络超时)而中断.
更复杂的系统将使用像React这样的工具,但其中最好的工具是由服务器端渲染(例如通过Next.js)或构建时生成的静态文件(例如通过Gatsby)支持的。也就是说,您使用选项 1 或选项 2,然后添加客户端以增强 UX 和性能。
推荐阅读
- python - 在 django rest 框架中应用自定义分页后,分页链接显示为空
- vt-x - 如何在我的 PC 上为 Android Studio 启用 VT-x?
- css - 文本大小的 CSS 平滑过渡
- ios - 反应本机启动崩溃
- android - 更改文本小部件 onTap 的文本颜色
- python - 将 2D DataFrame 转换为 Series 的最快方法
- stylus - 对传递依赖项的更改不会触发实时重新加载
- javascript - Threejs - 当我加载 80000 个单词时浏览器冻结什么是渲染纯二维文本的更有效方法?
- php - 针对变化的增强的 WooCommerce 自定义字段
- php - 如何在 WooCommerce 中检查是否启用了运送到不同地址选项