| @ -1,13 +1,17 @@ | |||||
| <!doctype html> | <!doctype html> | ||||
| <html lang="en"> | <html lang="en"> | ||||
| <head> | |||||
| <meta charset="UTF-8" /> | |||||
| <!-- <link rel="icon" type="image/svg+xml" /> --> | |||||
| <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | |||||
| <title>montieri</title> | |||||
| </head> | |||||
| <body> | |||||
| <div id="app"></div> | |||||
| <script type="module" src="/src/main.ts"></script> | |||||
| </body> | |||||
| </html> | |||||
| <head> | |||||
| <meta charset="UTF-8" /> | |||||
| <!-- <link rel="icon" type="image/svg+xml" /> --> | |||||
| <meta name="viewport" content="width=device-width, initial-scale=1.0" /> | |||||
| <meta name="keywords" content="FFE, Building materials, Smart hotel, Energy Saving" /> | |||||
| <title>MONTIERI - FFE, building materials and smart energy saving for hotel/residential/commercial</title> | |||||
| </head> | |||||
| <body> | |||||
| <div id="app"></div> | |||||
| <script type="module" src="/src/main.ts"></script> | |||||
| </body> | |||||
| </html> | |||||
| @ -1,35 +1,55 @@ | |||||
| <script setup lang="ts"> | <script setup lang="ts"> | ||||
| import HeaderPage from './components/HeaderPage.vue'; | |||||
| import FooterPage from './components/FooterPage.vue'; | |||||
| import { useRoute } from 'vue-router' | |||||
| import {computed, onMounted} from "vue"; | |||||
| import WOW from "wow.js"; | |||||
| import HeaderPage from './components/HeaderPage.vue'; | |||||
| import FooterPage from './components/FooterPage.vue'; | |||||
| import { useRoute } from 'vue-router' | |||||
| import { computed, onMounted } from "vue"; | |||||
| import WOW from "wow.js"; | |||||
| const route = useRoute() | |||||
| console.log(route) | |||||
| const routerKey = computed(() => { | |||||
| return route.path + Math.random() | |||||
| }) | |||||
| onMounted(()=>{ | |||||
| let wow = new WOW({ | |||||
| boxClass: "wow", | |||||
| animateClass: "animated", | |||||
| offset: 0, | |||||
| mobile: true, | |||||
| live: true, | |||||
| scrollContainer: null, | |||||
| resetAnimation: true, | |||||
| }); | |||||
| wow.init(); | |||||
| }) | |||||
| const route = useRoute() | |||||
| const routerKey = computed(() => { | |||||
| return route.path + Math.random() | |||||
| }) | |||||
| onMounted(() => { | |||||
| let wow = new WOW({ | |||||
| boxClass: "wow", | |||||
| animateClass: "animated", | |||||
| offset: 0, | |||||
| mobile: true, | |||||
| live: true, | |||||
| scrollContainer: null, | |||||
| resetAnimation: true, | |||||
| }); | |||||
| wow.init(); | |||||
| }) | |||||
| </script> | </script> | ||||
| <template> | <template> | ||||
| <HeaderPage></HeaderPage> | |||||
| <router-view :key="routerKey"></router-view> | |||||
| <FooterPage></FooterPage> | |||||
| <div class="appview"> | |||||
| <HeaderPage class="header"></HeaderPage> | |||||
| <router-view :key="routerKey" class="view"></router-view> | |||||
| <FooterPage class="footer"></FooterPage> | |||||
| </div> | |||||
| </template> | </template> | ||||
| <style> | |||||
| @import './assets/css/index.css'; | |||||
| <style lang="less"> | |||||
| @import './assets/css/index.css'; | |||||
| </style> | |||||
| <style lang="less"> | |||||
| .appview{ | |||||
| display: flex; | |||||
| flex-direction: column; | |||||
| height: 100vh; | |||||
| .header{ | |||||
| width: 100%; | |||||
| } | |||||
| .footer{ | |||||
| width: 100%; | |||||
| } | |||||
| .view{ | |||||
| flex: 1; | |||||
| // overflow-y: auto; | |||||
| } | |||||
| } | |||||
| </style> | </style> | ||||
| @ -0,0 +1,539 @@ | |||||
| /* Logo 字体 */ | |||||
| @font-face { | |||||
| font-family: "iconfont logo"; | |||||
| src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834'); | |||||
| src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'), | |||||
| url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'), | |||||
| url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'), | |||||
| url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg'); | |||||
| } | |||||
| .logo { | |||||
| font-family: "iconfont logo"; | |||||
| font-size: 160px; | |||||
| font-style: normal; | |||||
| -webkit-font-smoothing: antialiased; | |||||
| -moz-osx-font-smoothing: grayscale; | |||||
| } | |||||
| /* tabs */ | |||||
| .nav-tabs { | |||||
| position: relative; | |||||
| } | |||||
| .nav-tabs .nav-more { | |||||
| position: absolute; | |||||
| right: 0; | |||||
| bottom: 0; | |||||
| height: 42px; | |||||
| line-height: 42px; | |||||
| color: #666; | |||||
| } | |||||
| #tabs { | |||||
| border-bottom: 1px solid #eee; | |||||
| } | |||||
| #tabs li { | |||||
| cursor: pointer; | |||||
| width: 100px; | |||||
| height: 40px; | |||||
| line-height: 40px; | |||||
| text-align: center; | |||||
| font-size: 16px; | |||||
| border-bottom: 2px solid transparent; | |||||
| position: relative; | |||||
| z-index: 1; | |||||
| margin-bottom: -1px; | |||||
| color: #666; | |||||
| } | |||||
| #tabs .active { | |||||
| border-bottom-color: #f00; | |||||
| color: #222; | |||||
| } | |||||
| .tab-container .content { | |||||
| display: none; | |||||
| } | |||||
| /* 页面布局 */ | |||||
| .main { | |||||
| padding: 30px 100px; | |||||
| width: 960px; | |||||
| margin: 0 auto; | |||||
| } | |||||
| .main .logo { | |||||
| color: #333; | |||||
| text-align: left; | |||||
| margin-bottom: 30px; | |||||
| line-height: 1; | |||||
| height: 110px; | |||||
| margin-top: -50px; | |||||
| overflow: hidden; | |||||
| *zoom: 1; | |||||
| } | |||||
| .main .logo a { | |||||
| font-size: 160px; | |||||
| color: #333; | |||||
| } | |||||
| .helps { | |||||
| margin-top: 40px; | |||||
| } | |||||
| .helps pre { | |||||
| padding: 20px; | |||||
| margin: 10px 0; | |||||
| border: solid 1px #e7e1cd; | |||||
| background-color: #fffdef; | |||||
| overflow: auto; | |||||
| } | |||||
| .icon_lists { | |||||
| width: 100% !important; | |||||
| overflow: hidden; | |||||
| *zoom: 1; | |||||
| } | |||||
| .icon_lists li { | |||||
| width: 100px; | |||||
| margin-bottom: 10px; | |||||
| margin-right: 20px; | |||||
| text-align: center; | |||||
| list-style: none !important; | |||||
| cursor: default; | |||||
| } | |||||
| .icon_lists li .code-name { | |||||
| line-height: 1.2; | |||||
| } | |||||
| .icon_lists .icon { | |||||
| display: block; | |||||
| height: 100px; | |||||
| line-height: 100px; | |||||
| font-size: 42px; | |||||
| margin: 10px auto; | |||||
| color: #333; | |||||
| -webkit-transition: font-size 0.25s linear, width 0.25s linear; | |||||
| -moz-transition: font-size 0.25s linear, width 0.25s linear; | |||||
| transition: font-size 0.25s linear, width 0.25s linear; | |||||
| } | |||||
| .icon_lists .icon:hover { | |||||
| font-size: 100px; | |||||
| } | |||||
| .icon_lists .svg-icon { | |||||
| /* 通过设置 font-size 来改变图标大小 */ | |||||
| width: 1em; | |||||
| /* 图标和文字相邻时,垂直对齐 */ | |||||
| vertical-align: -0.15em; | |||||
| /* 通过设置 color 来改变 SVG 的颜色/fill */ | |||||
| fill: currentColor; | |||||
| /* path 和 stroke 溢出 viewBox 部分在 IE 下会显示 | |||||
| normalize.css 中也包含这行 */ | |||||
| overflow: hidden; | |||||
| } | |||||
| .icon_lists li .name, | |||||
| .icon_lists li .code-name { | |||||
| color: #666; | |||||
| } | |||||
| /* markdown 样式 */ | |||||
| .markdown { | |||||
| color: #666; | |||||
| font-size: 14px; | |||||
| line-height: 1.8; | |||||
| } | |||||
| .highlight { | |||||
| line-height: 1.5; | |||||
| } | |||||
| .markdown img { | |||||
| vertical-align: middle; | |||||
| max-width: 100%; | |||||
| } | |||||
| .markdown h1 { | |||||
| color: #404040; | |||||
| font-weight: 500; | |||||
| line-height: 40px; | |||||
| margin-bottom: 24px; | |||||
| } | |||||
| .markdown h2, | |||||
| .markdown h3, | |||||
| .markdown h4, | |||||
| .markdown h5, | |||||
| .markdown h6 { | |||||
| color: #404040; | |||||
| margin: 1.6em 0 0.6em 0; | |||||
| font-weight: 500; | |||||
| clear: both; | |||||
| } | |||||
| .markdown h1 { | |||||
| font-size: 28px; | |||||
| } | |||||
| .markdown h2 { | |||||
| font-size: 22px; | |||||
| } | |||||
| .markdown h3 { | |||||
| font-size: 16px; | |||||
| } | |||||
| .markdown h4 { | |||||
| font-size: 14px; | |||||
| } | |||||
| .markdown h5 { | |||||
| font-size: 12px; | |||||
| } | |||||
| .markdown h6 { | |||||
| font-size: 12px; | |||||
| } | |||||
| .markdown hr { | |||||
| height: 1px; | |||||
| border: 0; | |||||
| background: #e9e9e9; | |||||
| margin: 16px 0; | |||||
| clear: both; | |||||
| } | |||||
| .markdown p { | |||||
| margin: 1em 0; | |||||
| } | |||||
| .markdown>p, | |||||
| .markdown>blockquote, | |||||
| .markdown>.highlight, | |||||
| .markdown>ol, | |||||
| .markdown>ul { | |||||
| width: 80%; | |||||
| } | |||||
| .markdown ul>li { | |||||
| list-style: circle; | |||||
| } | |||||
| .markdown>ul li, | |||||
| .markdown blockquote ul>li { | |||||
| margin-left: 20px; | |||||
| padding-left: 4px; | |||||
| } | |||||
| .markdown>ul li p, | |||||
| .markdown>ol li p { | |||||
| margin: 0.6em 0; | |||||
| } | |||||
| .markdown ol>li { | |||||
| list-style: decimal; | |||||
| } | |||||
| .markdown>ol li, | |||||
| .markdown blockquote ol>li { | |||||
| margin-left: 20px; | |||||
| padding-left: 4px; | |||||
| } | |||||
| .markdown code { | |||||
| margin: 0 3px; | |||||
| padding: 0 5px; | |||||
| background: #eee; | |||||
| border-radius: 3px; | |||||
| } | |||||
| .markdown strong, | |||||
| .markdown b { | |||||
| font-weight: 600; | |||||
| } | |||||
| .markdown>table { | |||||
| border-collapse: collapse; | |||||
| border-spacing: 0px; | |||||
| empty-cells: show; | |||||
| border: 1px solid #e9e9e9; | |||||
| width: 95%; | |||||
| margin-bottom: 24px; | |||||
| } | |||||
| .markdown>table th { | |||||
| white-space: nowrap; | |||||
| color: #333; | |||||
| font-weight: 600; | |||||
| } | |||||
| .markdown>table th, | |||||
| .markdown>table td { | |||||
| border: 1px solid #e9e9e9; | |||||
| padding: 8px 16px; | |||||
| text-align: left; | |||||
| } | |||||
| .markdown>table th { | |||||
| background: #F7F7F7; | |||||
| } | |||||
| .markdown blockquote { | |||||
| font-size: 90%; | |||||
| color: #999; | |||||
| border-left: 4px solid #e9e9e9; | |||||
| padding-left: 0.8em; | |||||
| margin: 1em 0; | |||||
| } | |||||
| .markdown blockquote p { | |||||
| margin: 0; | |||||
| } | |||||
| .markdown .anchor { | |||||
| opacity: 0; | |||||
| transition: opacity 0.3s ease; | |||||
| margin-left: 8px; | |||||
| } | |||||
| .markdown .waiting { | |||||
| color: #ccc; | |||||
| } | |||||
| .markdown h1:hover .anchor, | |||||
| .markdown h2:hover .anchor, | |||||
| .markdown h3:hover .anchor, | |||||
| .markdown h4:hover .anchor, | |||||
| .markdown h5:hover .anchor, | |||||
| .markdown h6:hover .anchor { | |||||
| opacity: 1; | |||||
| display: inline-block; | |||||
| } | |||||
| .markdown>br, | |||||
| .markdown>p>br { | |||||
| clear: both; | |||||
| } | |||||
| .hljs { | |||||
| display: block; | |||||
| background: white; | |||||
| padding: 0.5em; | |||||
| color: #333333; | |||||
| overflow-x: auto; | |||||
| } | |||||
| .hljs-comment, | |||||
| .hljs-meta { | |||||
| color: #969896; | |||||
| } | |||||
| .hljs-string, | |||||
| .hljs-variable, | |||||
| .hljs-template-variable, | |||||
| .hljs-strong, | |||||
| .hljs-emphasis, | |||||
| .hljs-quote { | |||||
| color: #df5000; | |||||
| } | |||||
| .hljs-keyword, | |||||
| .hljs-selector-tag, | |||||
| .hljs-type { | |||||
| color: #a71d5d; | |||||
| } | |||||
| .hljs-literal, | |||||
| .hljs-symbol, | |||||
| .hljs-bullet, | |||||
| .hljs-attribute { | |||||
| color: #0086b3; | |||||
| } | |||||
| .hljs-section, | |||||
| .hljs-name { | |||||
| color: #63a35c; | |||||
| } | |||||
| .hljs-tag { | |||||
| color: #333333; | |||||
| } | |||||
| .hljs-title, | |||||
| .hljs-attr, | |||||
| .hljs-selector-id, | |||||
| .hljs-selector-class, | |||||
| .hljs-selector-attr, | |||||
| .hljs-selector-pseudo { | |||||
| color: #795da3; | |||||
| } | |||||
| .hljs-addition { | |||||
| color: #55a532; | |||||
| background-color: #eaffea; | |||||
| } | |||||
| .hljs-deletion { | |||||
| color: #bd2c00; | |||||
| background-color: #ffecec; | |||||
| } | |||||
| .hljs-link { | |||||
| text-decoration: underline; | |||||
| } | |||||
| /* 代码高亮 */ | |||||
| /* PrismJS 1.15.0 | |||||
| https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */ | |||||
| /** | |||||
| * prism.js default theme for JavaScript, CSS and HTML | |||||
| * Based on dabblet (http://dabblet.com) | |||||
| * @author Lea Verou | |||||
| */ | |||||
| code[class*="language-"], | |||||
| pre[class*="language-"] { | |||||
| color: black; | |||||
| background: none; | |||||
| text-shadow: 0 1px white; | |||||
| font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; | |||||
| text-align: left; | |||||
| white-space: pre; | |||||
| word-spacing: normal; | |||||
| word-break: normal; | |||||
| word-wrap: normal; | |||||
| line-height: 1.5; | |||||
| -moz-tab-size: 4; | |||||
| -o-tab-size: 4; | |||||
| tab-size: 4; | |||||
| -webkit-hyphens: none; | |||||
| -moz-hyphens: none; | |||||
| -ms-hyphens: none; | |||||
| hyphens: none; | |||||
| } | |||||
| pre[class*="language-"]::-moz-selection, | |||||
| pre[class*="language-"] ::-moz-selection, | |||||
| code[class*="language-"]::-moz-selection, | |||||
| code[class*="language-"] ::-moz-selection { | |||||
| text-shadow: none; | |||||
| background: #b3d4fc; | |||||
| } | |||||
| pre[class*="language-"]::selection, | |||||
| pre[class*="language-"] ::selection, | |||||
| code[class*="language-"]::selection, | |||||
| code[class*="language-"] ::selection { | |||||
| text-shadow: none; | |||||
| background: #b3d4fc; | |||||
| } | |||||
| @media print { | |||||
| code[class*="language-"], | |||||
| pre[class*="language-"] { | |||||
| text-shadow: none; | |||||
| } | |||||
| } | |||||
| /* Code blocks */ | |||||
| pre[class*="language-"] { | |||||
| padding: 1em; | |||||
| margin: .5em 0; | |||||
| overflow: auto; | |||||
| } | |||||
| :not(pre)>code[class*="language-"], | |||||
| pre[class*="language-"] { | |||||
| background: #f5f2f0; | |||||
| } | |||||
| /* Inline code */ | |||||
| :not(pre)>code[class*="language-"] { | |||||
| padding: .1em; | |||||
| border-radius: .3em; | |||||
| white-space: normal; | |||||
| } | |||||
| .token.comment, | |||||
| .token.prolog, | |||||
| .token.doctype, | |||||
| .token.cdata { | |||||
| color: slategray; | |||||
| } | |||||
| .token.punctuation { | |||||
| color: #999; | |||||
| } | |||||
| .namespace { | |||||
| opacity: .7; | |||||
| } | |||||
| .token.property, | |||||
| .token.tag, | |||||
| .token.boolean, | |||||
| .token.number, | |||||
| .token.constant, | |||||
| .token.symbol, | |||||
| .token.deleted { | |||||
| color: #905; | |||||
| } | |||||
| .token.selector, | |||||
| .token.attr-name, | |||||
| .token.string, | |||||
| .token.char, | |||||
| .token.builtin, | |||||
| .token.inserted { | |||||
| color: #690; | |||||
| } | |||||
| .token.operator, | |||||
| .token.entity, | |||||
| .token.url, | |||||
| .language-css .token.string, | |||||
| .style .token.string { | |||||
| color: #9a6e3a; | |||||
| background: hsla(0, 0%, 100%, .5); | |||||
| } | |||||
| .token.atrule, | |||||
| .token.attr-value, | |||||
| .token.keyword { | |||||
| color: #07a; | |||||
| } | |||||
| .token.function, | |||||
| .token.class-name { | |||||
| color: #DD4A68; | |||||
| } | |||||
| .token.regex, | |||||
| .token.important, | |||||
| .token.variable { | |||||
| color: #e90; | |||||
| } | |||||
| .token.important, | |||||
| .token.bold { | |||||
| font-weight: bold; | |||||
| } | |||||
| .token.italic { | |||||
| font-style: italic; | |||||
| } | |||||
| .token.entity { | |||||
| cursor: help; | |||||
| } | |||||
| @ -0,0 +1,326 @@ | |||||
| <!DOCTYPE html> | |||||
| <html> | |||||
| <head> | |||||
| <meta charset="utf-8"/> | |||||
| <title>iconfont Demo</title> | |||||
| <link rel="shortcut icon" href="//img.alicdn.com/imgextra/i4/O1CN01Z5paLz1O0zuCC7osS_!!6000000001644-55-tps-83-82.svg" type="image/x-icon"/> | |||||
| <link rel="icon" type="image/svg+xml" href="//img.alicdn.com/imgextra/i4/O1CN01Z5paLz1O0zuCC7osS_!!6000000001644-55-tps-83-82.svg"/> | |||||
| <link rel="stylesheet" href="https://g.alicdn.com/thx/cube/1.3.2/cube.min.css"> | |||||
| <link rel="stylesheet" href="demo.css"> | |||||
| <link rel="stylesheet" href="iconfont.css"> | |||||
| <script src="iconfont.js"></script> | |||||
| <!-- jQuery --> | |||||
| <script src="https://a1.alicdn.com/oss/uploads/2018/12/26/7bfddb60-08e8-11e9-9b04-53e73bb6408b.js"></script> | |||||
| <!-- 代码高亮 --> | |||||
| <script src="https://a1.alicdn.com/oss/uploads/2018/12/26/a3f714d0-08e6-11e9-8a15-ebf944d7534c.js"></script> | |||||
| <style> | |||||
| .main .logo { | |||||
| margin-top: 0; | |||||
| height: auto; | |||||
| } | |||||
| .main .logo a { | |||||
| display: flex; | |||||
| align-items: center; | |||||
| } | |||||
| .main .logo .sub-title { | |||||
| margin-left: 0.5em; | |||||
| font-size: 22px; | |||||
| color: #fff; | |||||
| background: linear-gradient(-45deg, #3967FF, #B500FE); | |||||
| -webkit-background-clip: text; | |||||
| -webkit-text-fill-color: transparent; | |||||
| } | |||||
| </style> | |||||
| </head> | |||||
| <body> | |||||
| <div class="main"> | |||||
| <h1 class="logo"><a href="https://www.iconfont.cn/" title="iconfont 首页" target="_blank"> | |||||
| <img width="200" src="https://img.alicdn.com/imgextra/i3/O1CN01Mn65HV1FfSEzR6DKv_!!6000000000514-55-tps-228-59.svg"> | |||||
| </a></h1> | |||||
| <div class="nav-tabs"> | |||||
| <ul id="tabs" class="dib-box"> | |||||
| <li class="dib active"><span>Unicode</span></li> | |||||
| <li class="dib"><span>Font class</span></li> | |||||
| <li class="dib"><span>Symbol</span></li> | |||||
| </ul> | |||||
| <a href="https://www.iconfont.cn/manage/index?manage_type=myprojects&projectId=4216264" target="_blank" class="nav-more">查看项目</a> | |||||
| </div> | |||||
| <div class="tab-container"> | |||||
| <div class="content unicode" style="display: block;"> | |||||
| <ul class="icon_lists dib-box"> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont"></span> | |||||
| <div class="name">我的产品</div> | |||||
| <div class="code-name">&#xe633;</div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont"></span> | |||||
| <div class="name">首页</div> | |||||
| <div class="code-name">&#xe64f;</div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont"></span> | |||||
| <div class="name">24gl-newspaper</div> | |||||
| <div class="code-name">&#xe8ae;</div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont"></span> | |||||
| <div class="name">联系我们</div> | |||||
| <div class="code-name">&#xe612;</div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont"></span> | |||||
| <div class="name">工程</div> | |||||
| <div class="code-name">&#xe6a4;</div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont"></span> | |||||
| <div class="name">专属服务</div> | |||||
| <div class="code-name">&#xe884;</div> | |||||
| </li> | |||||
| </ul> | |||||
| <div class="article markdown"> | |||||
| <h2 id="unicode-">Unicode 引用</h2> | |||||
| <hr> | |||||
| <p>Unicode 是字体在网页端最原始的应用方式,特点是:</p> | |||||
| <ul> | |||||
| <li>支持按字体的方式去动态调整图标大小,颜色等等。</li> | |||||
| <li>默认情况下不支持多色,直接添加多色图标会自动去色。</li> | |||||
| </ul> | |||||
| <blockquote> | |||||
| <p>注意:新版 iconfont 支持两种方式引用多色图标:SVG symbol 引用方式和彩色字体图标模式。(使用彩色字体图标需要在「编辑项目」中开启「彩色」选项后并重新生成。)</p> | |||||
| </blockquote> | |||||
| <p>Unicode 使用步骤如下:</p> | |||||
| <h3 id="-font-face">第一步:拷贝项目下面生成的 <code>@font-face</code></h3> | |||||
| <pre><code class="language-css" | |||||
| >@font-face { | |||||
| font-family: 'iconfont'; | |||||
| src: url('iconfont.woff2?t=1692348351208') format('woff2'), | |||||
| url('iconfont.woff?t=1692348351208') format('woff'), | |||||
| url('iconfont.ttf?t=1692348351208') format('truetype'); | |||||
| } | |||||
| </code></pre> | |||||
| <h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3> | |||||
| <pre><code class="language-css" | |||||
| >.iconfont { | |||||
| font-family: "iconfont" !important; | |||||
| font-size: 16px; | |||||
| font-style: normal; | |||||
| -webkit-font-smoothing: antialiased; | |||||
| -moz-osx-font-smoothing: grayscale; | |||||
| } | |||||
| </code></pre> | |||||
| <h3 id="-">第三步:挑选相应图标并获取字体编码,应用于页面</h3> | |||||
| <pre> | |||||
| <code class="language-html" | |||||
| ><span class="iconfont">&#x33;</span> | |||||
| </code></pre> | |||||
| <blockquote> | |||||
| <p>"iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。</p> | |||||
| </blockquote> | |||||
| </div> | |||||
| </div> | |||||
| <div class="content font-class"> | |||||
| <ul class="icon_lists dib-box"> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont icon-wodechanpin"></span> | |||||
| <div class="name"> | |||||
| 我的产品 | |||||
| </div> | |||||
| <div class="code-name">.icon-wodechanpin | |||||
| </div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont icon-shouye"></span> | |||||
| <div class="name"> | |||||
| 首页 | |||||
| </div> | |||||
| <div class="code-name">.icon-shouye | |||||
| </div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont icon-24gl-newspaper"></span> | |||||
| <div class="name"> | |||||
| 24gl-newspaper | |||||
| </div> | |||||
| <div class="code-name">.icon-24gl-newspaper | |||||
| </div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont icon-lianxiwomen"></span> | |||||
| <div class="name"> | |||||
| 联系我们 | |||||
| </div> | |||||
| <div class="code-name">.icon-lianxiwomen | |||||
| </div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont icon-gongcheng"></span> | |||||
| <div class="name"> | |||||
| 工程 | |||||
| </div> | |||||
| <div class="code-name">.icon-gongcheng | |||||
| </div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <span class="icon iconfont icon-zhuanshufuwu"></span> | |||||
| <div class="name"> | |||||
| 专属服务 | |||||
| </div> | |||||
| <div class="code-name">.icon-zhuanshufuwu | |||||
| </div> | |||||
| </li> | |||||
| </ul> | |||||
| <div class="article markdown"> | |||||
| <h2 id="font-class-">font-class 引用</h2> | |||||
| <hr> | |||||
| <p>font-class 是 Unicode 使用方式的一种变种,主要是解决 Unicode 书写不直观,语意不明确的问题。</p> | |||||
| <p>与 Unicode 使用方式相比,具有如下特点:</p> | |||||
| <ul> | |||||
| <li>相比于 Unicode 语意明确,书写更直观。可以很容易分辨这个 icon 是什么。</li> | |||||
| <li>因为使用 class 来定义图标,所以当要替换图标时,只需要修改 class 里面的 Unicode 引用。</li> | |||||
| </ul> | |||||
| <p>使用步骤如下:</p> | |||||
| <h3 id="-fontclass-">第一步:引入项目下面生成的 fontclass 代码:</h3> | |||||
| <pre><code class="language-html"><link rel="stylesheet" href="./iconfont.css"> | |||||
| </code></pre> | |||||
| <h3 id="-">第二步:挑选相应图标并获取类名,应用于页面:</h3> | |||||
| <pre><code class="language-html"><span class="iconfont icon-xxx"></span> | |||||
| </code></pre> | |||||
| <blockquote> | |||||
| <p>" | |||||
| iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。</p> | |||||
| </blockquote> | |||||
| </div> | |||||
| </div> | |||||
| <div class="content symbol"> | |||||
| <ul class="icon_lists dib-box"> | |||||
| <li class="dib"> | |||||
| <svg class="icon svg-icon" aria-hidden="true"> | |||||
| <use xlink:href="#icon-wodechanpin"></use> | |||||
| </svg> | |||||
| <div class="name">我的产品</div> | |||||
| <div class="code-name">#icon-wodechanpin</div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <svg class="icon svg-icon" aria-hidden="true"> | |||||
| <use xlink:href="#icon-shouye"></use> | |||||
| </svg> | |||||
| <div class="name">首页</div> | |||||
| <div class="code-name">#icon-shouye</div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <svg class="icon svg-icon" aria-hidden="true"> | |||||
| <use xlink:href="#icon-24gl-newspaper"></use> | |||||
| </svg> | |||||
| <div class="name">24gl-newspaper</div> | |||||
| <div class="code-name">#icon-24gl-newspaper</div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <svg class="icon svg-icon" aria-hidden="true"> | |||||
| <use xlink:href="#icon-lianxiwomen"></use> | |||||
| </svg> | |||||
| <div class="name">联系我们</div> | |||||
| <div class="code-name">#icon-lianxiwomen</div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <svg class="icon svg-icon" aria-hidden="true"> | |||||
| <use xlink:href="#icon-gongcheng"></use> | |||||
| </svg> | |||||
| <div class="name">工程</div> | |||||
| <div class="code-name">#icon-gongcheng</div> | |||||
| </li> | |||||
| <li class="dib"> | |||||
| <svg class="icon svg-icon" aria-hidden="true"> | |||||
| <use xlink:href="#icon-zhuanshufuwu"></use> | |||||
| </svg> | |||||
| <div class="name">专属服务</div> | |||||
| <div class="code-name">#icon-zhuanshufuwu</div> | |||||
| </li> | |||||
| </ul> | |||||
| <div class="article markdown"> | |||||
| <h2 id="symbol-">Symbol 引用</h2> | |||||
| <hr> | |||||
| <p>这是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法。相关介绍可以参考这篇<a href="">文章</a> | |||||
| 这种用法其实是做了一个 SVG 的集合,与另外两种相比具有如下特点:</p> | |||||
| <ul> | |||||
| <li>支持多色图标了,不再受单色限制。</li> | |||||
| <li>通过一些技巧,支持像字体那样,通过 <code>font-size</code>, <code>color</code> 来调整样式。</li> | |||||
| <li>兼容性较差,支持 IE9+,及现代浏览器。</li> | |||||
| <li>浏览器渲染 SVG 的性能一般,还不如 png。</li> | |||||
| </ul> | |||||
| <p>使用步骤如下:</p> | |||||
| <h3 id="-symbol-">第一步:引入项目下面生成的 symbol 代码:</h3> | |||||
| <pre><code class="language-html"><script src="./iconfont.js"></script> | |||||
| </code></pre> | |||||
| <h3 id="-css-">第二步:加入通用 CSS 代码(引入一次就行):</h3> | |||||
| <pre><code class="language-html"><style> | |||||
| .icon { | |||||
| width: 1em; | |||||
| height: 1em; | |||||
| vertical-align: -0.15em; | |||||
| fill: currentColor; | |||||
| overflow: hidden; | |||||
| } | |||||
| </style> | |||||
| </code></pre> | |||||
| <h3 id="-">第三步:挑选相应图标并获取类名,应用于页面:</h3> | |||||
| <pre><code class="language-html"><svg class="icon" aria-hidden="true"> | |||||
| <use xlink:href="#icon-xxx"></use> | |||||
| </svg> | |||||
| </code></pre> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| <script> | |||||
| $(document).ready(function () { | |||||
| $('.tab-container .content:first').show() | |||||
| $('#tabs li').click(function (e) { | |||||
| var tabContent = $('.tab-container .content') | |||||
| var index = $(this).index() | |||||
| if ($(this).hasClass('active')) { | |||||
| return | |||||
| } else { | |||||
| $('#tabs li').removeClass('active') | |||||
| $(this).addClass('active') | |||||
| tabContent.hide().eq(index).fadeIn() | |||||
| } | |||||
| }) | |||||
| }) | |||||
| </script> | |||||
| </body> | |||||
| </html> | |||||
| @ -0,0 +1,39 @@ | |||||
| @font-face { | |||||
| font-family: "iconfont"; /* Project id 4216264 */ | |||||
| src: url('iconfont.woff2?t=1692348351208') format('woff2'), | |||||
| url('iconfont.woff?t=1692348351208') format('woff'), | |||||
| url('iconfont.ttf?t=1692348351208') format('truetype'); | |||||
| } | |||||
| .iconfont { | |||||
| font-family: "iconfont" !important; | |||||
| font-size: 16px; | |||||
| font-style: normal; | |||||
| -webkit-font-smoothing: antialiased; | |||||
| -moz-osx-font-smoothing: grayscale; | |||||
| } | |||||
| .icon-wodechanpin:before { | |||||
| content: "\e633"; | |||||
| } | |||||
| .icon-shouye:before { | |||||
| content: "\e64f"; | |||||
| } | |||||
| .icon-24gl-newspaper:before { | |||||
| content: "\e8ae"; | |||||
| } | |||||
| .icon-lianxiwomen:before { | |||||
| content: "\e612"; | |||||
| } | |||||
| .icon-gongcheng:before { | |||||
| content: "\e6a4"; | |||||
| } | |||||
| .icon-zhuanshufuwu:before { | |||||
| content: "\e884"; | |||||
| } | |||||
| @ -0,0 +1,51 @@ | |||||
| { | |||||
| "id": "4216264", | |||||
| "name": "web", | |||||
| "font_family": "iconfont", | |||||
| "css_prefix_text": "icon-", | |||||
| "description": "", | |||||
| "glyphs": [ | |||||
| { | |||||
| "icon_id": "1831570", | |||||
| "name": "我的产品", | |||||
| "font_class": "wodechanpin", | |||||
| "unicode": "e633", | |||||
| "unicode_decimal": 58931 | |||||
| }, | |||||
| { | |||||
| "icon_id": "629343", | |||||
| "name": "首页", | |||||
| "font_class": "shouye", | |||||
| "unicode": "e64f", | |||||
| "unicode_decimal": 58959 | |||||
| }, | |||||
| { | |||||
| "icon_id": "7548884", | |||||
| "name": "24gl-newspaper", | |||||
| "font_class": "24gl-newspaper", | |||||
| "unicode": "e8ae", | |||||
| "unicode_decimal": 59566 | |||||
| }, | |||||
| { | |||||
| "icon_id": "7817221", | |||||
| "name": "联系我们", | |||||
| "font_class": "lianxiwomen", | |||||
| "unicode": "e612", | |||||
| "unicode_decimal": 58898 | |||||
| }, | |||||
| { | |||||
| "icon_id": "10032377", | |||||
| "name": "工程", | |||||
| "font_class": "gongcheng", | |||||
| "unicode": "e6a4", | |||||
| "unicode_decimal": 59044 | |||||
| }, | |||||
| { | |||||
| "icon_id": "34453380", | |||||
| "name": "专属服务", | |||||
| "font_class": "zhuanshufuwu", | |||||
| "unicode": "e884", | |||||
| "unicode_decimal": 59524 | |||||
| } | |||||
| ] | |||||
| } | |||||
| @ -0,0 +1,36 @@ | |||||
| <template> | |||||
| <div class="newsmessage"> | |||||
| <div v-if="router.currentRoute.value.params.name == 'all'"> | |||||
| <Title :value="title"></Title> | |||||
| <Service :index="2"/> | |||||
| </div> | |||||
| <div v-else> | |||||
| 新闻资讯 | |||||
| </div> | |||||
| </div> | |||||
| </template> | |||||
| <script setup lang="ts"> | |||||
| import router from '../router'; | |||||
| import Service from './Service.vue'; | |||||
| import Title from '../components/Title.vue'; | |||||
| import { ref } from 'vue' | |||||
| let title = ref<any>({ | |||||
| title: "News", | |||||
| desc: "" | |||||
| }) | |||||
| </script> | |||||
| <style scoped lang="less"> | |||||
| .newsmessage{ | |||||
| // margin-top: 1vw; | |||||
| } | |||||
| @media screen and (max-width: 960px) { | |||||
| .newsmessage{ | |||||
| margin-top: 10vw; | |||||
| } | |||||
| } | |||||
| </style> | |||||
| @ -0,0 +1,85 @@ | |||||
| <template> | |||||
| <div class="productcenter"> | |||||
| <div class="box" v-if="!show"> | |||||
| {{ router.currentRoute.value.params.name }} | |||||
| </div> | |||||
| <div class="box" v-else> | |||||
| <el-tabs v-model="activeName" class="demo-tabs" @tab-click="handleClick"> | |||||
| <el-tab-pane :label="item.title" :name="item.position" v-for="item,index in productList" :key="index"> | |||||
| <div> | |||||
| <h2>{{ item.title }}</h2> | |||||
| </div> | |||||
| </el-tab-pane> | |||||
| </el-tabs> | |||||
| </div> | |||||
| </div> | |||||
| </template> | |||||
| <script setup lang="ts"> | |||||
| import router from '../router'; | |||||
| import { ref } from 'vue' | |||||
| import type { TabsPaneContext } from 'element-plus/lib'; | |||||
| let show = ref<any>(false) | |||||
| let productList = Array<any>([]) | |||||
| let activeName = ref<any>('Floor') | |||||
| const handleClick = (tab: TabsPaneContext, event: Event) => { | |||||
| console.log(tab, event) | |||||
| } | |||||
| if (router.currentRoute.value.params.name == 'Building Materials') { | |||||
| show.value = true | |||||
| productList = [ | |||||
| { title: 'Floor', position: 'Floor' }, | |||||
| { title: 'Wall', position: 'Wall' }, | |||||
| { title: 'roof', position: 'roof' } | |||||
| ] | |||||
| activeName.value = productList[0].title | |||||
| } else if(router.currentRoute.value.params.name == 'Sanitary Ware') { | |||||
| show.value = true | |||||
| productList = [ | |||||
| { title: 'Mirror', position: 'Mirror' }, | |||||
| { title: 'Toilet', position: 'Toilet' }, | |||||
| { title: 'Bathtub ', position: 'Bathtub ' }, | |||||
| { title: 'Jacuzzi', position: 'Jacuzzi' }, | |||||
| { title: 'Faucet', position: 'Faucet' }, | |||||
| { title: 'Sink', position: 'Sink' }, | |||||
| { title: 'Accessories', position: 'Accessories' }, | |||||
| { title: 'Shower Glass', position: 'ShowerGlass' }, | |||||
| { title: 'Bathroom', position: 'Bathroom' }, | |||||
| { title: 'Shower system', position: 'Showersystem' }, | |||||
| ] | |||||
| activeName.value = productList[0].title | |||||
| }else{ | |||||
| show.value = false | |||||
| } | |||||
| </script> | |||||
| <style scoped lang="less"> | |||||
| .productcenter { | |||||
| margin-top: 2vw; | |||||
| .box { | |||||
| width: 90%; | |||||
| margin: 0 auto; | |||||
| } | |||||
| } | |||||
| @media screen and (max-width: 960px) { | |||||
| .productcenter { | |||||
| margin-top: 14vw; | |||||
| } | |||||
| } | |||||
| </style> | |||||
| <style> | |||||
| .demo-tabs > .el-tabs__content { | |||||
| padding: 10px; | |||||
| color: #6b778c; | |||||
| font-size: 32px; | |||||
| font-weight: 600; | |||||
| } | |||||
| </style> | |||||