{"id":32327,"date":"2024-11-25T11:25:50","date_gmt":"2024-11-25T03:25:50","guid":{"rendered":"https:\/\/fwq.ai\/blog\/32327\/"},"modified":"2024-11-25T11:25:50","modified_gmt":"2024-11-25T03:25:50","slug":"%e5%88%9b%e5%bb%ba%e5%93%8d%e5%ba%94%e5%bc%8f%e8%ae%be%e8%ae%a1%e6%bb%91%e5%8a%a8%e4%be%a7%e5%af%bc%e8%88%aa%e8%8f%9c%e5%8d%95","status":"publish","type":"post","link":"https:\/\/fwq.ai\/blog\/32327\/","title":{"rendered":"\u521b\u5efa\u54cd\u5e94\u5f0f\u8bbe\u8ba1\u6ed1\u52a8\u4fa7\u5bfc\u822a\u83dc\u5355"},"content":{"rendered":"<p><img decoding=\"async\" src=\"https:\/\/img.php.cn\/upload\/article\/000\/887\/227\/169327086344366.jpg\" class=\"aligncenter\" title=\"\u521b\u5efa\u54cd\u5e94\u5f0f\u8bbe\u8ba1\u6ed1\u52a8\u4fa7\u5bfc\u822a\u83dc\u5355\u63d2\u56fe\" alt=\"\u521b\u5efa\u54cd\u5e94\u5f0f\u8bbe\u8ba1\u6ed1\u52a8\u4fa7\u5bfc\u822a\u83dc\u5355\u63d2\u56fe\" \/><\/p>\n<p>\u5728\u672c\u6559\u7a0b\u4e2d\uff0c\u60a8\u5c06\u4f7f\u7528 JavaScript \u548c CSS \u521b\u5efa\u53ef\u6269\u5c55\u7684\u4fa7\u9762\u5bfc\u822a\u83dc\u5355\u3002\u6700\u7ec8\u4ea7\u54c1\u5982\u4e0b\u56fe\u6240\u793a\uff1a<\/p>\n<\/p>\n<h2> <span>1.<\/span> \u521b\u5efa\u6807\u8bb0<\/h2>\n<p>\u9996\u5148\uff0c\u8ba9\u6211\u4eec\u4e3a\u4fa7\u8fb9\u83dc\u5355\u6dfb\u52a0\u4e00\u4e9b\u6807\u8bb0\uff1a<\/p>\n<pre>&lt;div id=\"sideNavigation\" class=\"sidenav\"&gt;\n  &lt;a href=\"#\" class=\"close-btn\"&gt;\u00d7&lt;\/a&gt;\n  &lt;a href=\"#\"&gt;About&lt;\/a&gt;\n  &lt;a href=\"#\"&gt;Features&lt;\/a&gt;\n  &lt;a href=\"#\"&gt;Contact Us&lt;\/a&gt;\n&lt;\/div&gt;\n \n&lt;nav class=\"topnav\"&gt;&lt;a href=\"#\" class=\"ham-icon\"&gt;\n    &lt;svg width=\"30\" height=\"30\" id=\"icoOpen\"&gt;&lt;path d=\"M0,5 30,5\" stroke=\"#000\" stroke-width=\"5\"&gt;&lt;\/path&gt;&lt;path d=\"M0,14 30,14\" stroke=\"#000\" stroke-width=\"5\"&gt;&lt;\/path&gt;&lt;path d=\"M0,23 30,23\" stroke=\"#000\" stroke-width=\"5\"&gt;&lt;\/path&gt;&lt;\/svg&gt;&lt;\/a&gt;\n&lt;\/nav&gt;&lt;section id=\"main\"&gt;&lt;h1&gt;This Side Navigation Menu Looks Good!&lt;\/h1&gt;\n  &lt;p&gt;Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.&lt;\/p&gt;\n&lt;\/section&gt;<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u5728\u8fd9\u91cc\u4f60\u53ef\u4ee5\u770b\u5230\u6211\u4eec\u7528\u7c7b sidenav \u521b\u5efa\u4e86\u4e00\u4e2a\u4fa7\u8fb9\u83dc\u5355 div \u3002\u63a5\u4e0b\u6765\uff0c\u6211\u4eec\u901a\u8fc7 <\/p>\n<p>  \u6807\u7b7e\u6dfb\u52a0\u4e86\u5b9e\u9645\u7684\u9876\u90e8\u680f\u5bfc\u822a\uff0c\u5e76\u4e14\u6211\u4eec\u4f7f\u7528 SVG \u4f5c\u4e3a\u4fa7\u9762\u83dc\u5355\u56fe\u6807\u3002  <\/p>\n<p>\u8bb0\u4f4f\u5c06\u7f51\u7ad9\u7684\u6240\u6709\u5185\u5bb9\u653e\u5165 div id=&#8221;main&#8221; \u5bb9\u5668\u4e2d\uff0c\u4ee5\u4fbf\u5b83\u5411\u53f3\u6ed1\u52a8\u3002<\/p>\n<h2> <span>2.<\/span> \u7f16\u5199 JavaScript \u4ee3\u7801<\/h2>\n<p>\u63a5\u4e0b\u6765\uff0c\u8ba9\u6211\u4eec\u6dfb\u52a0 JavaScript\uff0c\u8be5 JavaScript \u5c06\u4f7f\u7528 ham-icon \u7c7b\u4fa6\u542c\u6c49\u5821\u5305\u56fe\u6807\u4e0a\u7684\u5355\u51fb\u4e8b\u4ef6\uff0c\u4ee5\u53ca\u4fa7\u9762\u5bfc\u822a\u83dc\u5355\u6ed1\u5230\u5c4f\u5e55\u4e0a\u540e\u51fa\u73b0\u7684\u5173\u95ed\u6309\u94ae\u3002<\/p>\n<pre>document.querySelector(\"a.ham-icon\").addEventListener(\"click\", function(event){\n  document.getElementById(\"sideNavigation\").style.width = \"250px\";\n  document.getElementById(\"main\").style.marginLeft = \"250px\";\n});\n\ndocument.querySelector(\"a.close-btn\").addEventListener(\"click\", function(event){\n  document.getElementById(\"sideNavigation\").style.width = \"0\";\n  document.getElementById(\"main\").style.marginLeft = \"0\";\n});\n<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u5355\u51fb\u6c49\u5821\u5305\u56fe\u6807\u5e94\u8be5\u4f1a\u663e\u793a\u4fa7\u9762\u5bfc\u822a\u3002\u4e3a\u6b64\uff0c\u6211\u4eec\u5c06\u5bfc\u822a\u7684\u5bbd\u5ea6\u8bbe\u7f6e\u4e3a 250px\uff0c\u540c\u65f6\u5411\u4e3b\u8981\u7f51\u7ad9\u5185\u5bb9\u6dfb\u52a0 250px \u7684\u5de6\u8fb9\u8ddd\u3002<\/p>\n<p>\u5355\u51fb\u5173\u95ed\u6309\u94ae\u5e94\u8be5\u4f1a\u9690\u85cf\u4fa7\u9762\u5bfc\u822a\u3002\u4e3a\u6b64\uff0c\u6211\u4eec\u5c06\u5bfc\u822a\u7684\u5bbd\u5ea6\u66f4\u6539\u56de 0\uff0c\u540c\u65f6\u5c06\u4e3b\u7f51\u7ad9\u5185\u5bb9\u7684\u5de6\u8fb9\u8ddd\u8bbe\u7f6e\u4e3a 0\u3002<\/p>\n<h2> <span>3.<\/span> \u4f7f\u7528 CSS \u6837\u5f0f<\/h2>\n<p>\u6700\u540e\uff0c\u6211\u4eec\u9700\u8981\u4f7f\u7528\u4e00\u4e9b CSS \u6765\u8bbe\u7f6e\u4fa7\u8fb9\u83dc\u5355\u548c\u94fe\u63a5\u7684\u9875\u9762\u6837\u5f0f\u3002 CSS \u4f1a\u5c06\u6240\u6709\u7f51\u9875\u5143\u7d20\u6b63\u786e\u653e\u7f6e\u5728\u6211\u4eec\u60f3\u8981\u7684\u4f4d\u7f6e\u3002\u6211\u4eec\u8fd8\u5c06\u5728 transition \u5c5e\u6027\u7684\u5e2e\u52a9\u4e0b\u5e94\u7528\u4e00\u4e9b\u7b80\u5355\u7684\u52a8\u753b\u3002\u8ba9\u6211\u4eec\u4e00\u6b21\u770b\u4e00\u4e0b CSS \u7684\u4e00\u90e8\u5206\u3002<\/p>\n<pre>.sidenav {\n  height: 100%;\n  width: 0;\n  position: fixed;\n  z-index: 1;\n  top: 0;\n  left: 0;\n  background-color: #111;\n  overflow-x: hidden;\n  padding-top: 4rem;\n  transition: 0.4s cubic-bezier(0.18, 0.89, 0.32, 1.28);\n  font-family: \"Bebas Neue\";\n}\n\n.sidenav a {\n  padding: 0.5rem 1rem;\n  text-decoration: none;\n  color: #bdbdbd;\n  display: block;\n  transition: 0.4s;\n  white-space: nowrap;\n  font-size: 2rem;\n}\n\n.sidenav a:hover {\n  color: white;\n  background: #9e9e9e;\n}\n<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u6211\u4eec\u5c06\u4fa7\u8fb9\u5bfc\u822a\u7684height\u8bbe\u7f6e\u4e3a100%\uff0c\u5e76\u5c06\u5176\u521d\u59cbwidth\u8bbe\u7f6e\u4e3a0\u4ee5\u4f7f\u5176\u9690\u85cf\u3002\u4f46\u662f\uff0c\u53ea\u6709\u5f53 overflow-x \u5c5e\u6027\u7684\u503c\u8bbe\u7f6e\u4e3a hidden \u65f6\uff0c\u4fa7\u8fb9\u5bfc\u822a\u7684\u5185\u5bb9\u624d\u4f1a\u4fdd\u6301\u9690\u85cf\u3002<\/p>\n<p>\u8fc7\u6e21\u5c5e\u6027\u53ef\u786e\u4fdd\u4fa7\u9762\u5bfc\u822a\u5bbd\u5ea6\u7684\u53d8\u5316\u4e0d\u4f1a\u7a81\u7136\u53d1\u751f\uff0c\u5e76\u4e14\u7f13\u52a8\u529f\u80fd\u4f7f\u5176\u5177\u6709\u4e00\u70b9\u5f39\u6027\u3002<\/p>\n<p>\u5bf9\u4e8e\u4fa7\u9762\u5bfc\u822a\u5185\u7684\u94fe\u63a5\uff0c\u6211\u4eec\u5c06 white-space \u5c5e\u6027\u7684\u503c\u8bbe\u7f6e\u4e3a nowrap \uff0c\u4ee5\u4fbf\u83dc\u5355\u6587\u672c\u4e0d\u4f1a\u6ea2\u51fa\u591a\u884c\u3002<\/p>\n<pre>.sidenav .close-btn {\n  position: absolute;\n  top: -1rem;\n  right: 1rem;\n  font-size: 5rem;\n}\n\n.sidenav .close-btn:hover {\n  background: initial;\n  transform: scale(1.2);\n}\n<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u4e0a\u9762\u7684 CSS \u6837\u5f0f\u5c06\u6211\u4eec\u7684\u5173\u95ed\u6309\u94ae\u4e0e\u4fa7\u9762\u5bfc\u822a\u4e2d\u7684\u5176\u4ed6\u94fe\u63a5\u5206\u5f00\u3002\u6211\u4eec\u5bf9\u5173\u95ed\u6309\u94ae\u5e94\u7528\u4e86\u7edd\u5bf9\u5b9a\u4f4d\uff0c\u5e76\u9632\u6b62\u5176\u80cc\u666f\u5728\u60ac\u505c\u65f6\u53d8\u6210\u6d45\u7070\u8272\u3002\u5f53\u7528\u6237\u5c06\u9f20\u6807\u60ac\u505c\u5728\u5176\u4e0a\u65b9\u65f6\uff0c\u5b83\u7684\u5927\u5c0f\u8fd8\u4f1a\u653e\u5927 20%\u3002<\/p>\n<p>\u73b0\u5728\uff0c\u4ee5\u4e0b CSS \u5c06\u901a\u8fc7\u4f7f\u7528\u76f8\u540c\u7684\u8fc7\u6e21\u6301\u7eed\u65f6\u95f4\u548c\u76f8\u540c\u7684\u7f13\u52a8\u51fd\u6570\u6765\u786e\u4fdd\u4e3b\u8981\u5185\u5bb9\u4f4d\u7f6e\u7684\u79fb\u52a8\u4e0e\u5bfc\u822a\u83dc\u5355\u540c\u6b65\u3002\u5c06 overflow-x \u5c5e\u6027\u7684\u503c\u8bbe\u7f6e\u4e3a hidden \u53ef\u786e\u4fdd\u4e0d\u4f1a\u56e0\u5185\u5bb9\u79fb\u52a8\u800c\u51fa\u73b0\u6c34\u5e73\u6eda\u52a8\u6761\u3002<\/p>\n<pre>#main {\n  transition: margin-left 0.4s cubic-bezier(0.18, 0.89, 0.32, 1.28);\n  padding: 20px;\n  width: 100%;\n}\n\nbody {\n overflow-x: hidden; \n}\n<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u6211\u4eec\u8fd8\u53ef\u4ee5\u501f\u52a9\u4ee5\u4e0b CSS \u4e3a\u6c49\u5821\u5305\u56fe\u6807\u6dfb\u52a0\u4e00\u70b9\u65cb\u8f6c\u8fd0\u52a8\u3002\u5b83\u5728 0.5 \u79d2\u7684\u65f6\u95f4\u5185\u5c06\u6c49\u5821\u5305\u56fe\u6807\u65cb\u8f6c 180 \u5ea6\u3002<\/p>\n<pre>a svg {\n  transition: all 0.5s ease;\n}\na svg:hover {\n  transform: rotate(180deg);\n}\n<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u6700\u540e\uff0c\u8ba9\u6211\u4eec\u901a\u8fc7\u4f7f\u7528\u4ee5\u4e0b CSS \u8c03\u6574\u94fe\u63a5\u7684\u95f4\u8ddd\u548c\u5927\u5c0f\u6765\u4f7f\u5bfc\u822a\u83dc\u5355\u5177\u6709\u54cd\u5e94\u80fd\u529b\u3002\u5b83\u786e\u4fdd\u83dc\u5355\u4e0d\u4f1a\u5728\u5782\u76f4\u7a7a\u95f4\u8f83\u5c0f\u7684\u5c4f\u5e55\u4e0a\u8d85\u51fa\u8303\u56f4\u3002<\/p>\n<pre>@media screen and (max-height: 480px) {\n  .sidenav {\n    padding-top: 3rem;\n  }\n  .sidenav a {\n    font-size: 1.5rem;\n  }\n}\n<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u6b64\u65f6\u60a8\u7684\u5bfc\u822a\u83dc\u5355\u5e94\u8be5\u7c7b\u4f3c\u4e8e\u4ee5\u4e0b CodePen \u6f14\u793a\u3002<\/p>\n<\/p>\n<h2> <span>4.<\/span> \u79fb\u9664\u5e7b\u706f\u7247<\/h2>\n<p>\u8981\u4f7f\u83dc\u5355\u663e\u793a\u65f6\u6ca1\u6709\u5e7b\u706f\u7247\u52a8\u753b\uff0c\u53ea\u9700\u66f4\u6539 CSS \u5c5e\u6027 transition\uff0c\u5982\u4e0b\u9762\u7684\u7f29\u5199\u5f62\u5f0f\u6240\u793a\uff1a<\/p>\n<pre>.sidenav {\n    transition: 0s; \n}\n\n#main {\n    transition: margin-left 0s;\n}\n<\/pre>\n<p>  \u767b\u5f55\u540e\u590d\u5236   <\/p>\n<p>\u8fd9\u5c06\u4f7f\u66f4\u6539\u7acb\u5373\u51fa\u73b0\uff0c\u56e0\u4e3a transition \u4e2d\u6ca1\u6709\u6307\u5b9a\u5ef6\u8fdf\u3002\u6211\u4eec\u4f7f\u7528\u7684\u9ed8\u8ba4\u503c\u662f 0.5s\u3002<\/p>\n<h2>\u7ed3\u8bba<\/h2>\n<p>\u521b\u5efa\u4fa7\u8fb9\u83dc\u5355\u53ea\u9700\u8981\u51e0\u884c\u4ee3\u7801\uff0c\u4e0d\u9700\u8981\u4f7f\u7528\u5f88\u591a\u8d44\u6e90\u3002\u4f7f\u4ee3\u7801\u80fd\u591f\u54cd\u5e94\u4e0d\u540c\u7684\u8bbe\u5907\u5c4f\u5e55\u5206\u8fa8\u7387\uff0c\u53ea\u9700\u901a\u8fc7\u9488\u5bf9\u7279\u5b9a\u60c5\u51b5\u6dfb\u52a0\u5a92\u4f53\u67e5\u8be2\u6765\u4fee\u6539 CSS\u3002<\/p>\n<p>\u4e3a\u4e86\u66f4\u8fdb\u4e00\u6b65\uff0c\u60a8\u53ef\u80fd\u5e0c\u671b\u4f7f\u7528 Bootstrap \u6216 Bulma \u7b49 CSS \u6846\u67b6\u6765\u8bbe\u8ba1\u83dc\u5355\u6837\u5f0f\u3002<\/p>\n<p><em>\u672c\u6587\u5df2\u6839\u636e Monty Shokeen \u7684\u8d21\u732e\u8fdb\u884c\u4e86\u66f4\u65b0\u3002 Monty \u662f\u4e00\u4f4d\u5168\u6808\u5f00\u53d1\u4eba\u5458\uff0c\u4ed6\u4e5f\u559c\u6b22\u7f16\u5199\u6559\u7a0b\u548c\u5b66\u4e60\u65b0\u7684 JavaScript \u5e93\u3002<\/em><\/p>\n<p>\u4ee5\u4e0a\u5c31\u662f\u521b\u5efa\u54cd\u5e94\u5f0f\u8bbe\u8ba1\u6ed1\u52a8\u4fa7\u5bfc\u822a\u83dc\u5355\u7684\u8be6\u7ec6\u5185\u5bb9\uff0c\u66f4\u591a\u8bf7\u5173\u6ce8\u7c73\u4e91\u5176\u5b83\u76f8\u5173\u6587\u7ae0\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5728\u672c\u6559\u7a0b\u4e2d\uff0c\u60a8\u5c06\u4f7f\u7528 JavaScript \u548c CSS \u521b\u5efa\u53ef\u6269\u5c55\u7684\u4fa7\u9762\u5bfc\u822a\u83dc\u5355\u3002\u6700\u7ec8\u4ea7\u54c1\u5982\u4e0b\u56fe\u6240\u793a\uff1a 1. \u521b\u5efa\u6807\u8bb0 \u9996\u5148\uff0c\u8ba9\u6211\u4eec\u4e3a\u4fa7\u8fb9\u83dc\u5355\u6dfb\u52a0\u4e00\u4e9b\u6807\u8bb0\uff1a &lt;div id=&#8221;sideNavigation&#8221; class=&#8221;sidenav&#8221;&gt; &lt;a href=&#8221;#&#8221; class=&#8221;close-btn&#8221;&gt;\u00d7&lt;\/a&gt; &lt;a href=&#8221;#&#8221;&gt;About&lt;\/a&gt; &lt;a href=&#8221;#&#8221;&gt;Features&lt;\/a&gt; &lt;a href=&#8221;#&#8221;&gt;Contact Us&lt;\/a&gt; &lt;\/div&gt; &lt;nav class=&#8221;topnav&#8221;&gt;&lt;a href=&#8221;#&#8221; class=&#8221;ham-icon&#8221;&gt; &lt;svg width=&#8221;30&#8243; height=&#8221;30&#8243; id=&#8221;icoOpen&#8221;&gt;&lt;path d=&#8221;M0,5 30,5&#8243; stroke=&#8221;#000&#8243; stroke-width=&#8221;5&#8243;&gt;&lt;\/path&gt;&lt;path d=&#8221;M0,14 30,14&#8243; stroke=&#8221;#000&#8243; stroke-width=&#8221;5&#8243;&gt;&lt;\/path&gt;&lt;path d=&#8221;M0,23 30,23&#8243; stroke=&#8221;#000&#8243; stroke-width=&#8221;5&#8243;&gt;&lt;\/path&gt;&lt;\/svg&gt;&lt;\/a&gt; &lt;\/nav&gt;&lt;section id=&#8221;main&#8221;&gt;&lt;h1&gt;This Side Navigation Menu Looks Good!&lt;\/h1&gt; &lt;p&gt;Lorem ipsum dolor sit amet, consectetur [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18],"tags":[],"class_list":["post-32327","post","type-post","status-publish","format-standard","hentry","category-cms"],"_links":{"self":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/32327","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/comments?post=32327"}],"version-history":[{"count":0,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/32327\/revisions"}],"wp:attachment":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/media?parent=32327"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/categories?post=32327"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/tags?post=32327"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}