云顶娱乐集团

当前位置:云顶娱乐集团 > 云顶娱乐集团 > UI组件化的局地用脑筋想,怎么着设置链接样式

UI组件化的局地用脑筋想,怎么着设置链接样式

来源:http://www.clubskodakaroq.com 作者:云顶娱乐集团 时间:2019-11-20 00:34

前面三个 UI组件化的部分思维

2017/04/10 · 根基本事 · 组件化

初藳出处: 王一蛋   

明日合营社推起了共用 UI 组件化的大潮,创制了二个新的 Repo 来放置共用的 UI 组件,比方下拉菜单等。出于对历史版本的表单组件的不满,小编从两周前初叶踏上了和睦的 React 表单组件制作之路,踩了众多坑也可以有了众多醒来,之后也会写后生可畏篇随笔关于本身是何等写那些组件的(对 React 感兴趣的能够点这里 Hyo ,汉语文书档案卡塔尔。之后集团群里分享了那样三个发言录制:Best Practices on building a UI component library for your company (David Wells) – FSF 2016 ,看完事后感触良多,本文算是该演说内容的叁个大致与探究。

回来正题,假若你在贰个特大型公司工作,或许您的商店有无数机关,你们该怎么促成全局 UI 组件来逾越种种板块的限度?想象三个气象,假令你的成套公司都在选取同生机勃勃段 UI 代码管理公共组件,财务工具在运用它,博客工具在运用它,在线闲聊工具在行使它,且不论在移动端,桌面端照旧web 端都能阅览它,那该有多造福?不要求累赘而复杂地一回再一次完成效果与利益看似的表单,开关或是列表。那是三个相对突出的安装,因为随意你在哪儿你都只需求保证一个代码库,且富有全局资源也都在同三个地点,开拓者们能够方便地找到所需的代码并对其进献。同有时间,共享UI 组件同事也会给你的顾客带给相容的涉世,无论她在浏览或行使哪个工具,移动端或是桌面端,他的所见所感都以相平等的。注意的是同步这一定义,对于具有众多出品的铺面来讲要是共享UI ,那就表示三回 UI 进级总体集团的出品都会受其震慑。那从超越59%意义上的话是豆蔻梢头件善事,但奇迹又会带给许多难为,之后会提起。同时你的机件也应该是齐全的,不与其它你所在集体所选拔的第三方包相冲突。综上,怎么着两全你团队成品的 UI 架构,使得其兼具上述优点的同期还应该有优异的可扩充性与性格,是我们几眼下所要研究的首要。

在本文中,大家重视行使 React 作为UI组件化的例证,将页面细分组件化是 React 的为主艺术学,大家能够非常低价的将本文中的观念引进此中。

咱俩先来看多个有关 UI 设计指南标准的事例,那是 Salesforce 的 UI 库 Lightning Design System,他给了特别详尽的 UI 准绳,各类付加物的页面、组件应当怎么着被拍卖,特别值得大家上学与借鉴。先来看三个style guide 应当某些怎么着内容:

  1. 文档 由你团队成员所写的,借使使用 React 你能够平素通过注释 Proptypes 的章程,通过 React-docgen 生成文档。
  2. 代码预览 你应当提供二个能够让开垦者实时调节和测量试验代码的地点,使别的那些零部件的使用者能够越来越好地领略各样props 。
  3. 运用实例 提供一些怎么样将其数量导入 UI 的实例代码,使其余开荒者能够更加快上手与她们的应用状态。
  4. 相容性 例如怎么着使用警示、载入新闻等额外内容的正统,来提供顾客相平等的体会。

那正是说,怎样搭建四个零器件库呢?为了回应这一个难题大家得以将其细分为如下多少个小步骤:

  1. 将完全的主题素材拆开成细目。
  2. 怎么样处理 CSS ?
  3. 什么将财富如变量,Logo等公有化?
  4. 哪些将其包装,便于使用?
  5. 初叶从当中获得收入!

首先,大家现讲怎么样将问题拆解,我们理应将页面上海展览中心示的一切看作是组件。也正是说每当你得到设计师的稿子,第生龙活虎件事应该正是讲页面上全部你所能看到的要素翻译成无数个小零件,这也是 React 的眼光:复用组件。

图片 1

下一步,大家再将小组件组合成为很大的机件。这里只好涉及 Brad Frost 所建议的 Atomic Design。它所阐释的视角与本文所要说的视角相近,即由“原子”组成“分子”,“分子”构成“协会”,从而产生模板,进而生成页面。看下这个事例,标签,输入,按键各是五个“原子”,合在一齐即成了三个“分子”。

图片 2图片 3

其次, CSS 一如既往都以贰个相当费劲的标题。大家应有如何管理类名冲突?怎么样使用第三方库的 CSS 文件?怎么样保管与 CSS 文件不冲突?怎么着保障相互独立?对于这么些难点未来早原来就有了好多缓和方案。

大卫 Wells 在发言中提到的与大家公司今后所使用的都以通过 PostCSS + CSS modules的解决方案。关于 CSS Modules 搭配 React 的用法,这里有个很好的例证:Modular CSS with React 。具体来讲能够见此用例:

JavaScript

/* Thumbnail.jsx */ import styles from './Thumbnail.css'; render() { return (<img className={styles.image}/>) }

1
2
3
4
5
/* Thumbnail.jsx */
import styles from './Thumbnail.css';
render() {
  return (<img className={styles.image}/>)
}

JavaScript

/* Thumbnail.css */ .image { border-radius: 3px; }

1
2
3
4
/* Thumbnail.css */
.image {
  border-radius: 3px;
}

Hash 后变卦的 HTML tag 与 CSS 看起来会是这么:

JavaScript

/* Rendered DOM */ <img class="Thumbnail__image___1DA66"/>

1
2
/* Rendered DOM */
<img class="Thumbnail__image___1DA66"/>

JavaScript

/* Processed Thumbnail.css */ .Thumbnail__image___1DA66 { border-radius: 3px; }

1
2
3
4
/* Processed Thumbnail.css */
.Thumbnail__image___1DA66 {
  border-radius: 3px;
}

此地将要大家 Thumbnail.jsx 文件中通过 CSS modules 引进 CSS 文件,再经过引进的 style 变量获取 hash 后的 CSS 类名。

此地提到的另贰个工具 PostCSS 会将你的css文件全加上前缀名以适应分化浏览器,淹没 CSS 4 的宽容性难点。

故此你真正必要接纳 PostCSS 和 CSS Modules 么?你能够问自个儿如下难题:你在一个组织四川中华南理工业大学学程集团作么?你利用第三方库的 CSS 文件么?你的出品在第三方情状中运转么?你想要你的成品在别的意况中体验大器晚成致么?假使您回复是,那您能够接收尝试这一方案,因为这后生可畏技术方案基本消逝了类名冲突与浏览器宽容的标题。

第三,关于什么管理分享能源。对于全局变量与 mixin ,大家提出通过几个PostCSS 的插件来解决,而非使用sass等预微处理机语言。能够因而一个简易的Postcss config来解释:

JavaScript

var vars = require('postcss-simple-vars'); var mixins = require('postcss-mixins'); var postCSSConfig = [ mixins({ mixins: require('./mixins') }), vars({ variables: require('./variables') }), ]

1
2
3
4
5
6
7
var vars   = require('postcss-simple-vars');
var mixins   = require('postcss-mixins');
 
var postCSSConfig = [
  mixins({ mixins: require('./mixins') }),
  vars({ variables: require('./variables') }),
]

此地大家从三个 mixins.js 文件中领到全局mixin,四个 varibles.js 文件中领取全局变量,他将会在您具有通过 PostCSS 编译的 CSS 文件中生效。实际利用中与less和sass拾叁分相像,见例:

JavaScript

.hyo { @mixin MarsPower; /* 在 mixin.js 文件中定义 */ color: $MarsRed; /* 在 variables.js 文件中定义 */ }

1
2
3
4
.hyo {
  @mixin MarsPower; /* 在 mixin.js 文件中定义 */
  color: $MarsRed; /* 在 variables.js 文件中定义 */
}

对此Logo,由于其轻量型与便利性我们平时选择svg。基本的行事流程是由设计员营造 svg ,在您的 JS 代码中引进 svg ,通过 ’webpack-svgstore-plugin’ 优化 svg 并生成 sprite ,将 sprite 注入 DOM 。此处大家能够运用 svg use 标签,情势如:

XHTML

<svg><use id=“icon-aaa”></svg>

1
<svg><use id=“icon-aaa”></svg>

第四步,也是最后一步UI组件化的局地用脑筋想,怎么着设置链接样式。,大家相应怎么着搭建甚至包装?

第一,大家有那么些多的工具来驱动开辟 React 组件变得令人刺激欢腾,推荐多少个常用的第三方库:
carte-blanche 那是个可怜牛b的 React 开采工具,只需简单几步就可已在浏览器中测量检验你的 React 组件,同一时间还扶助随机生成 prop 来测验你的机件会不会应该为 prop 十分而咽气。
react-storybook 那是叁个 carte-blanche 极其肖似的精选,也是自己用来开拓 Hyo 的工具。
react-docgen 文书档案生成工具,你能够一贯导入多个react文件夹,就算你在proptype中谢了批注它将会活动为您转移文书档案。

在本子更新时,注意使用语义化版本。每当你要起来写贰个新的营造时,能够先在 Github 上搜求一下前任的落到实处况势,站在一代天骄的肩部上行事才会渔人之利。

终极,关于怎样打包,DW 推荐的章程是之类文件结构:

图片 4

对此笔者代表相当的赞同。分开打包种种小的组件入口,扁平化你的文本结构,组件之间可以相互重视使用,对于开采成效与扩充化本领特别有支持。

多少时候很难去查看你在哪些页面使用了哪些组件。这里你能够使用三个监视器组件来询问你利用的零器件。那在无数时候极其便利,例如你想升官某二个构件,你会想去领悟怎么页面或是组件信任了那几个组件进而进行校正,DW 提供了贰个兑现,咱们能够依照大家的必要来落实自身的 Monitor Component。

图片 5

终极的尾声,小结多少个开垦 React 组件中常遇见的主题材料。(起码自身是碰见了- -卡塔 尔(英语:State of Qatar)首先,做事先想清楚要促成的 Feature,与设计员研讨并写下团结的急需,市道上是或不是有可用的代替品,尽或然不要定义过多的 prop,不然在后头维护会特别艰难。其次,尽大概地给与使用者客制化的任务,譬喻内容什么渲染,排序怎么着开展等,最佳开放一个api 使得使用者能够协和定义,因为你永恒不能够估摸并满意全数使用者的必要。第三,在享有浏览器上开展测验,陈词滥调了但不经常候照旧会忘。最后,从上马便定义好 lint 的规行矩步并遵守它,能够参谋 AirBnB 的配置作为初叶点。

滔滔不竭写了如此多,希望大家都能从当中能收获些许。最终再安利一下 Hyo,也好不轻松本人的第三个认真做的开源项目,希望大家多多点星! | Demo点这里 | 文书档案点这里 |

1 赞 1 收藏 评论

图片 6

认识CSS属性之clip-path

2016/06/20 · CSS · clip-path

本文由 伯乐在线 - 古鲁伊 翻译,艾凌风 校稿。未经许可,禁止转发!
土耳其共和国(Türkiye Cumhuriyeti卡塔 尔(阿拉伯语:قطر‎语出处:Nitish Kumar。招待参与翻译组。

Web 页面以正方形为主,相比较之下,平面媒体在形象方面更具多种性。产生这种差别的由来之黄金时代正是,在 web 页面开采中贫乏像平面媒体中那样合适的工具。

本文种带你认知 clip-path 属性,那脾气格令你能够蒙蔽成分的某某个,可以预知区域由设置的参数值所调节。大家先读书基本概念,而后介绍 clip-path 语法,最后来看下越来越高深的概念。

CSS: 试试,然后做的更加好

2015/08/28 · CSS · CSS

本文由 伯乐在线 - 赖信涛 翻译,JustinWu 校稿。未经许可,禁绝转发!
丹麦语出处:css-tricks.com。接待插手翻译组。

您有未有担忧过自个儿写的 CSS 都错了?有未有想过会失掉一些让一切变得越来越好更简短的新形式?是否想在 CSS 方面更有自信呢?

那在这里上边你和 Anna 料定身入其境:

本人的 CSS充满了小编疑忌。今后 class 使用什么的名字系统更适用呢?未来怎么着又是最棒的?什么是差的?

——Anna Debenham (@anna_debenham) November 13, 2014

假诺您也写了好多CSS,不过一向未有过这么的猜疑,那么就相比较令人担忧了。要么正是你一等聪明,要么,呵呵,你懂的

自身近年写 CSS 的章程是:纵然尝试,做的更加好。我不是想要宣扬特殊的方法论也许严俊的平整。那更疑似一些宽大的原理,保障专业在可控的限量内,积南北极品尝,然后做的更加好有的。

提个醒:这是小编个人的章程。小编职业的品类差不离唯有小编要好担当 CSS。从近年来css-tricks 上的投票来看,个中四分之一也同等适用于你。作者想见,和您一只干活的人更加多,小编的指出的职能就越小。 //译注:原来的文章 csstricks 网址边栏有叁个投票。

以下就是事必躬亲的原理:

毫无懒惰。你如曾几何时候偷懒了,自身心里都知情。比方对有个别问题你快乐草草的高效改正,并非彻底驾驭这么些主题素材。或然是哪位文件看起来适逢其时就立时将 CSS 放进去实际不是思量它到底该放在哪个地方。又也许是当有个别场景明显必要新的格局时您却反其道而行之。

接纳你喜欢的办法。知道啊?在模块中本人爱好光明正天下使用子选拔器。.module > h2这种方式平常出现在自己的 CSS 中。严刻的方法论肯定不帮助这种做法,然则本身可无论是。在它出错早先,作者会平昔那样使用,然则到今后截至都以没错。倘使它出错了,笔者再改。原因相比笔者事先所波及的。

用你欢畅的不二法门开展命名。意气风发经让自身遵照某些准绳来命名,小编脑子里分明会一团糟。作者应当会花上风姿浪漫两日的年华来接纳那个法则,何况重新进行田间管理。大家的类型完全部都以借助自家要好的喜好进行命名的。总体上来讲,作者觉获得更轻巧,更神速。

动用本人感觉高效的工具。本身不会推荐什么工具,因为好的工具是玉石俱焚的。假诺本人感到有些工具很有用,笔者就能够去用。只要它能节省时间,做出更加好地功效,越来越好地组织,化解品质难题,自动做出最棒选项,不管它是何等,作者用了。

有一条准则是本身直接以来坚信的:在整整项目中保险选拔器的低特异性。结合 Harry 的特异性图表能够很好地领会这句话。特异性是会日益上涨的,因而要防止生龙活虎从头就时有爆发Gott异性,不然它会异常快产生三个难点。能够虚构多用:.class{}

有针对性地再一次访问页面包车型客车各类部分。指标不止是反省各样部分的 CSS 突出,还要总计做的越来越好,适用于多数人。作者开采每一遍自作者重新访问二个地点,都以做最后润色的八个机遇,那让笔者对旧代码更有自信。

1 赞 2 收藏 评论

什么形成一名牌产品优品越的前端程序猿

2015/08/19 · JavaScript · 6 评论 · 前端工程师, 职场

初稿出处: Philip Walton   译文出处:赵锦江(@勾三股四卡塔尔国   

译注:本文翻译自Google程序员 Philip Walton 的豆蔻年华篇博客。看过以后非经常有感触,超多见识都以和谐长时间特别百折不挠和承认的,所以翻译出来分享给愈来愈多的前端同学!


近些日子自己接到风姿浪漫封读者来信让自个儿陷入了酌量,信是这么写的:

Hi 菲尔ip,您是还是不是在意小编问,您是怎么成为一名优良 (great) 的前端技术员的?对此您有怎么着提议吗?

只可以认同,被问那样的主题素材,小编很古怪,因为自个儿平素不觉得温馨是个很标准的前端程序员。以致本人出道的头几年时并不以为本人能够做好那生龙活虎行。小编只规定自个儿比自个儿想象中还才薄智浅,何况大家面试笔者的时候都不明了从何问起

话虽如此说,笔者到几最近做得还算不错,况兼成为了公司中有价值的风度翩翩员。但自己最终离开 (去寻求新的挑衅——即笔者还不能胜任的职业) 的时候,作者时常会被必要招徕约请笔者的继承者。以往重播这一个面试,小编不由得慨然当小编刚起头的时候本人在这里方面的知识是何等的缺少。作者前不久说不许不会根据小编要好的模型实行招徕特邀,尽管我个人的这种经历也可能有望得逞。

自己在 web 领域办事越长期,笔者就越意识到区分人才和极品人才的并不是她们的文化——而是他们构思难点的方法。很鲜明,知识在众多状态下是格外主要並且重视的——但是在多少个急忙前行的世界,你前行和获取知识的点子 (最少在十分短的意气风发段时间里) 会比你曾经精晓的学问来得特别器重。更要紧的是:你是什么样运用这一个文化消除天天的主题材料的。

此处有庞大的稿子商议你办事中需求的语言、框架、工具等等。小编盼望给生龙活虎部分不一致等的建议。在这里篇小说里,笔者想谈一谈一个前端技术员的心思,希望得以扶植大家找到通往优异的征途。

如何设置链接样式

2016/09/05 · CSS

本文小编: 伯乐在线 - 赖祥燃 。未经作者许可,制止转发!
应接加入伯乐在线 专辑审核人。

基本概念

Clipping (裁剪卡塔尔正是从某物上修剪下一块。在前端中,clipping 就是黄金时代种后生可畏体化或局地地隐蔽页面成分的操作。关于 clipping,本文还有恐怕会谈起其余多个概念:clipping path(剪裁路线卡塔尔国clipping region(剪裁区域卡塔尔

Clipping path 是用来裁剪成分的渠道,能够标志出 clipping region。clipping path 能够是底蕴形状大概是参差不齐的多方路线。而 clipping path 围起来的区域就是 clipping region 了。

浏览器会裁剪掉 clipping region 以外的区域,不止是背景及其他相似的开始和结果,也富含 border、text-shadow 等。更赞的是,浏览器不会捕获成分 clipping region 以外的 hoverclick 等事件。

不怕现行反革命部分一定成分不受正方形节制,但其实成分周边的剧情依旧会以为成分是原始形状(星型卡塔 尔(英语:State of Qatar)的,并按此展开文书档案流的布局。要想使相近成分根据元素裁剪后的样子举办布局,还不错 shape-outside 属性。这么些天性的详细新闻能够活动 这篇 SitePoint 教程 。

在乎,请不要将这些性情与 clip 属性 混淆。日常景观下请防止接纳 clip 属性,因为它受广大规模並且只帮助纺锤形裁剪。

至于小编:赖信涛

图片 7

个人网址 个人主页 · 作者的篇章 · 18 ·  

图片 8

别光消亡难题,思考毕竟发生了怎样

许多少人埋头写 CSS 和 JavaScript 直到程序办事起来了,然后就去做别的事情了。小编通过 code review 发掘这种事时常发生。

笔者总会问我们:“为何您会在此增加 float: left?”或者“这里的 overflow: hidden 是少不了的呢?”,他们数次答道:“作者也不明了,然则我风度翩翩删掉它们,页面就乱套了。”

JavaScript 也是同后生可畏,小编总会在四个标准角逐的地方来看叁个 setTimeout,或许稍稍人鸦默雀静中梗阻了风云传播,却不知道它会影响到页面中别的的事件管理。

自个儿意识大多境况下,当您遇见难点的时候,你只是化解当下的题目罢了。可是一旦您恒久不花时间知道难点的起点,你将二遍又贰次的面临同样的题目。

花一些日子寻觅为何,那看上去费时吃力,不过自身保险它会省掉你今后的年华。在一点一滴精晓整个类别现在,你就没有必要总去困惑和论证了。

前言

日常说来我们在装置链接的片段伪类(linkvisitedhoveractive卡塔 尔(英语:State of Qatar)样式时,要让区别的情景突显准确的样式,大家要求按一定的次第设置那些伪类的体制。这里自身就按CSS2规范中推荐介绍的相继实行介绍,即 link-visited-hover-active,可记为 LoVe-HAte

要想弄掌握怎么是以此顺序,首先我们须要知道,CSS在分明相应向一个要素选择哪些样式时,那日常不仅仅要求考虑 继承,还要思索申明的 特殊性,别的要求考虑注脚自个儿的来源于,这些历程就改成 层叠。下边大家分别来会见特殊性继承层叠 那3种体制之间的涉嫌。

语法及运用

利用那些脾性的正确语法如下:

clip-path: <clip-source> | [ <basic-shape> || <geometry-box> ] | none

1
clip-path: <clip-source> | [ <basic-shape> || <geometry-box> ] | none

上述属性值包蕴:

``clip-source 能够是内、外界的 SVG <clipPath> 元素的 URL 引用。

basic-shape 可以是 CSS Shapes 说明 中定义的底工形状函数。

``geometry-box 是可选的参数。此参数和 basic-shape 函数一同使用时,可感到 basic-shape 的剪裁职业提供参谋盒子。借使 geometry-box 由本人钦点,那么它会动用内定盒子的形制作为裁剪的渠道,包蕴别的(由 border-radius 属性提供的卡塔尔国角的样子。我们稍后会详细表达。

目前来探问上边选用根基形状函数的 CSS 代码:

JavaScript

img { clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%); }

1
2
3
img {
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}

这段代码会将有所的图样裁剪为菱形。可是为啥图片会被裁剪为菱形实际不是梯形或平行四边形呢?那决意于函数中的顶点值。下图表明了扭转多边形裁剪路线的平整:

图片 9

多边形裁剪路线图

 

各样点的首先个坐标值决定了它在 x 轴上的地点,第四个坐标值钦定了它在 y 轴的岗位,全数一点点是顺时针绘制的。比方菱形最左侧的点,它位于 y 轴下方一半处,所以它的 y 坐标是 一半。同不平日候那一个点位于 x 轴的最左边,所以它的 x 坐标是 百分之百。此外点的坐标不问可以看到。

学会预感以后的浏览器发展趋向

前后端支出的三个根本差别在于后端代码平常都运行在完全由你掌握控制的条件下。前端绝对来讲不那么在你的掌握控制之中。差别客户的阳台或设施是前面二个长久的话题,你的代码供给温婉掌握控制那全数。

本人记得本身 二〇一三 年在此之前已经读书某主流 JavaScript 框架的时候见到过上边那样的代码 (简化过的):

JavaScript

var isIE6 = !isIE7 && !isIE8 && !isIE9;

1
var isIE6 = !isIE7 && !isIE8 && !isIE9;

在这里个例子中变量 IE6 为了认清 IE 浏览器版本是不是是 6 或更低的版本。那么在 IE10 发布时,我们的主次判断仍然会出标题。

自己知道在不追求虚名世界特色检查评定并不 百分百 职业,并且部分时候你只可以依附有 bug 的表征或基于浏览器特性检验的大谬不然设计白名单。但你为此做的每黄金时代件事都不行关键,因为您预言到了不再有 bug 的前程。

对此大家个中的不少人的话,我们前些天写的代码都会比我们的干活周期要长。某些本人写的代码已经谢世8 年多了还在付加物线上运维。那令人很满意又非常不安。

特殊性

在其实的行使中,大家都掌握二个要素得以由此种种选用器来進展精选,如ID选择器、类选拔器等等,具体可看CSS接收器详明。由差异接受器组成的取舍成分的措施临时称之为 规则 吧。思虑以下3对法则,当然每对法则都采纳肖似的因素:

CSS

/* 规则1 */ h1 { color: red; } body h1 { color: purple; } /* 规则2 */ h2.grape { color: purple; } h2 { color: silver; } /* 规则3 */ html > body table tr[id="totals"] td ul > li { color: maroon; } li#answer { color: navy; }

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/* 规则1 */
h1 {
    color: red;
}
body h1 {
    color: purple;
}
 
/* 规则2 */
h2.grape {
    color: purple;
}
h2 {
    color: silver;
}
 
/* 规则3 */
html > body table tr[id="totals"] td ul > li {
    color: maroon;
}
li#answer {
    color: navy;
}

刚强,每生龙活虎对法规中唯有二个超过,因为所相称的成分只好是某生龙活虎种颜色。那么怎么领会哪叁个平整更加强呢?

答案就在于每一种选用器的特殊性。通过估测计算选拔器的奇天性值,特殊性最高的准则将会胜出并被应用。 此地先预先留下多少个标题,借使特殊性相等的五个法则将何以鲜明应用?前面包车型客车层叠再介绍。

本文由云顶娱乐集团发布于云顶娱乐集团,转载请注明出处:UI组件化的局地用脑筋想,怎么着设置链接样式

关键词: