美文网首页
ITCCS一些笔记

ITCCS一些笔记

作者: 一点金光 | 来源:发表于2019-08-15 10:26 被阅读0次

解决ui项目架构设计的问题

它是什么
为什么要
如何实现
参考文献

它是什么

01.样式架构
02.可伸缩的
03.可管理的
04.思想流派
05.元框架的
06.极简单的

为什么要

Problems with CSS at scale

CSS’ fault vs. our fault

01.The cascade and inheritance.
02.Very loose .
03.Highly dependent on source order.
04.Not very expressive. Lots of gotchas. Specificity.

01.Lack of documentation.
02.Lack of structure, quality assurance.
03.Mixture of abilities.
04.Lack of knowledge (about CSS or the project itself).
05.Different styles, preferences, ways of working.
06.Not looking to see/being aware of what exists already.
07.Adding new styles to the end of stylesheets.

Inheritance, the cascade, and source order
01.Each piece of CSS needs a knowledge of what came before it and what might come after it – a.k.a. dependencies.
02.CSS is one giant dependency tree.
03.We need a way to manage this dependency at a very low level.
04.Ways of ordering stylesheets:
(01).Mirror(反映) the web page – old school!
(02).Thematic(专题的) chunks – typography, forms, buttons, etc.
(03).Just stick it on the end of the stylesheet.
05.Writing more CSS in order to undo other CSS.
06.Poor source order coupled with inherited/inheriting styles can lead to a lot of waste and/or redundancy.

Specificity

01.It doesn’t matter how well-considered your source order is.
02.how well you’re utilising the cascade.
03.what naming conventions you use.
04.specificity can undo everything.

推荐场景?
01.管理样式工程
02.管理大型应用

如何实现

Write CSS in specificity order.

一些目的?
01.A sane environment that is accessible to lots of people.
02.To tame and manage source order and the cascade.
03.To create a place for everything to live (new and old).
04.To reduce waste and redundancy.
05.To end the Specificity Wars.

倒三角形?
01.从通用的到明确的
02.从广泛的到局部的
03.从低明确到高明确

默认的层?
01.Settings: Global variables, config switches.
02.Tools: Default mixins and functions.
03.Generic: Ground-zero styles (Normalize.css, resets, box-sizing).
04.Base: Unclassed HTML elements (type selectors).
05.Objects: Cosmetic-free design patterns.
06.Components: Designed components, chunks of UI.
07.Trumps: Helpers and overrides.

设置层:定义预处理器sass/less/styuls的变量和默认值。包含全局有效设置,配置开关,扩展颜色等。
如$color-ui,$spacing-unit
工具层:定义预处理器sass/less/styuls的函数和混合器。包含全局有效工具,公共混合器,助手函数。
如@mixin font-brand() 。
通用层:低级别的专化性;Resets, Normalize.css等
基础层:未分类的网页元素,标题,基础链接,列表等;标签选择器,如ul,a,blockquote。
对象层:面向对象的;设计模式;开始使用类名,如.ui-list;
组件层:设计UI片段;使用类名;更明确的名字如.products-list 。
覆盖层:覆盖的,工具的,助手的;仅在某时刻影响DOM的某一片段;常用!important。
如:.one-half {width: 50% !important;}

需要注意?
01.专化性:slowly increases layer-by-layer.
02.影响性:We affect smaller and smaller bits of the DOM at a time.
03.渐进性:Progressively adding styles; never undoing.

伸缩架构?
01.层的增删:Add or remove layers if, as, and when you need to.
02.预处理器:Not using a preprocessor? Remove the Settings and Tools layers.
03.面向对象:Don’t use OOCSS? Remove the Objects layer.
04.需要主题:Need theming? Add a Theme layer.

参考文献

andeers:writing-css-with-itcss
csswizardry:a-talk-on-itcss-dafed

相关文章

  • ITCCS一些笔记

    解决ui项目架构设计的问题 它是什么为什么要如何实现参考文献 它是什么 01.样式架构02.可伸缩的03.可管理的...

  • 2019-03-16 一些临时笔记

    1. 近期的一些笔记 2. 仍然是一些笔记

  • 抑郁自我护理手册

    一些学习笔记~

  • 想成长,这有22个行动模型

    印象笔记一直是高效率人士推崇备至的笔记管理软件,其实印象笔记+一些行动管理模型功效倍增。今天印象笔记归纳了一些方法...

  • 2020-03-02 临时笔记

    只是一些临时笔记。

  • 我为什么要学习写作

    自己下载了包括印象笔记、有道云笔记在内的一些笔记和日记APP,在日记APP也写了一些日记,但是我更喜欢写...

  • Vue.js笔记

    整理的一些笔记一些自己在学习Vue中遇到的一些问题,都很简单的一些笔记 $ref介绍 侦测路由变化问题 keep-...

  • shiny搭建自己的笔记检索

    以前一直使用notepad++保存一些纯文本笔记,有时也会在简书保存一些总结性的笔记,后来苦于简书没有搜索自己笔记...

  • 开机自启

    一、说明   笔记主要是记录一些本人在开发当中的学习和使用笔记。笔记内容包含一些本人觉得重要的知识点、本人易犯的错...

  • JNI

    一、说明   笔记主要是记录一些本人在开发当中的学习和使用笔记。笔记内容包含一些本人觉得重要的知识点、本人易犯的错...

网友评论

      本文标题:ITCCS一些笔记

      本文链接:https://www.haomeiwen.com/subject/uvjajctx.html