Web 前端框架 Bootstrap 与 Uikit 的选择 or 自建?

2014-08-07 13:29:55 +08:00
 thonatos
Rt:Web前端框架Bootstrap与Uikit的选择or自建?

开始的时候图方便,使用bootstrap做前端框架(Dist),
逐渐的因为需要问题,下载LESS/SASS文件修改变量来实现自定义。
而现在的这个问题出现的原因是看到了UIKIT,故而有这样的考虑,拿出来讨论一下。

>Bootstrap:

Bootstrap的便捷不言而喻,但凡对前端有所接触的人基本都知道,但个性化定制则需要修改源文件:

// Core variables and mixins
@import "bootstrap/variables";
@import "bootstrap/mixins";

有时候有特殊需要,还要改navbar.scss等等,每次去修改源码,这种方式始终不是自己比较喜欢的。

>>Bootstrap的使用:

1.下载源码(scss/less)
2.修改配置(variables)
3.修改样式(*.less/*.scss)
4.生成样式

>Uikit:

Uikit的使用同上有类似之处(Dist),但是自定义的方式就明显不一样了。(dist不在讨论范围内~)

>>Uikit的使用:

1.下载源码(github上整个项目下载了吧~)
2.自建主题(theme/custom/theme-name
3.配置样式(辅助theme/default/下的内容,然后自定义)
4.添加样式(uikit.less 中 @import “*.less”)
5.grunt

此时会在theme/custom/theme-name生成自己主题文件,html中调用即可。

>>优势:不修改源码,重用,同一份源码(不改动源码,只添加主题),可以生成多套样式。

>讨论

说到底,使用前端框架的最根本原因,是可以便捷生成响应式页面,使用一些通用的模块(nav..)
两种方式各有千秋,bootstrap的自定义,基于站点或者主题时候,显然没有关系,uikit的优势上面也有说到,怎么选择,是根据自己的需求。

这里也不算是提问吧,主要是想看看大家的看法~
12807 次点击
所在节点    问与答
17 条回复
chon
2014-08-07 13:41:44 +08:00
bootstrap也不一定要修改源码吧,自己重新写个CSS覆盖相应的class就行了。
hellojinjie
2014-08-07 13:46:12 +08:00
第一次看到 UIkit。。

果然好牛,,感觉就是 boostrap + jquery-ui
scarlex
2014-08-07 14:06:49 +08:00
我习惯全部自己写...
jacob
2014-08-07 14:09:32 +08:00
如果什么都自己写还要框架做什么??,我很好奇
thonatos
2014-08-07 14:47:49 +08:00
@chon 覆盖嘛?可以像uikit那样来做?如果可以的话,求指导一下,感谢~
loading
2014-08-07 14:49:42 +08:00
@chon +1
我也是这样用的!
thonatos
2014-08-07 14:50:34 +08:00
@jacob 框架的好处是有一些通用的参考吧,自定义的地方,还是需要自己去写的嘛
thonatos
2014-08-07 14:52:05 +08:00
@hellojinjie 是什么不要紧吧,关键是如果便于使用,毕竟造轮子这种事,不做还是不错的。
66beta
2014-08-07 15:39:52 +08:00
小项目用框架,可以节省2/3的时间~
chon
2014-08-07 16:36:02 +08:00
@thonatos 直接添加新的style,跟bootstrap中的class名称一样就可以。
hdlifes
2014-08-07 16:47:54 +08:00
在用twbs,保持通用的组件结构不变,个性化的都用单独的样式去覆盖或者在原有基础上增强。修改的部分主要是已声明的变量。

楼主说的“4.添加样式(uikit.less 中 @import “*.less”)”,这个也是在 default 的基础上复制再覆盖而来的各个组件吧?
jsonline
2014-08-07 16:49:18 +08:00
I hate Bootstrap.
Yien
2014-08-07 17:24:32 +08:00
make
explon
2014-08-07 17:32:09 +08:00
性化定制要改源码? 你来 wenda.wecenter.com 看看吧
lygmqkl
2014-08-07 17:34:05 +08:00
bootstrap + backbone, I always use it.
qq5775548
2014-08-07 20:26:52 +08:00
我用的是LESS,一般 bootstrap + lesshat 自定义编写样式覆盖就OK鸟 表示完全没鸭梨
thonatos
2014-08-08 21:35:43 +08:00
@explon 显然是需要的,其他的说话我认可,但是直接覆盖并不能对全局生效,对于一些全局的内容,必然是要改动的。例如flatui,只靠覆盖的做法是做不到的,对吧~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/126568

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX