Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
/docsPublic

A front-end methodology for robust/flexible/scalable HTML/CSS/JavaScript.

License

NotificationsYou must be signed in to change notification settings

iocss/docs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

A front-end methodology for robust/flexible/scalable HTML/CSS/JavaScript.

Basics

  • Every HTML element can be a Component.
  • Component may has one or more Element(s).
  • Element can also be a Component.
  • Modifier/State class name isn't a good idea.
  • Each Component should know only itself and its own Element(s)/Sub-Component(s).
  • IOCSS allows you to use 2 different syntaxes. One isBEM-like syntax, another isInterface-driven syntax.

(Web Components might also rescue us from CSS nightmares.)

Class name (BEM-like syntax)

  • The class name of each HTML element should becomponent orcomponent--element.
  • "component" means just"Acomponent Component". This is similar to BEM's Block.
  • "component--element" means"Anelement Element OF thecomponent Component".
    In other words,"Thecomponent Component HAS theelement Element". This is similar to BEM's Element.
  • Normally, one Element has only 1 or 2 class(es).
    One is for the Element of a Component, another is for a Sub-Component that is injected as the Element.
  • "component--elementanother-component" means"Anelement Element OF thecomponent Component" and"Theelement Element IS alsoanother-component Component".
    This is forCSS selector delegation/CSS selector chaining.
  • Cerate new class name for a variant of Component/Element, instead of using a class name like BEM's Modifier.
  • Adding vendor-prefix to each class name is a good idea.

Common Component Structure (BEM-like syntax)

<div>    <div>        <div>        </div>        <div>        </div>        <div>        </div>    </div></div>
  • You may omit each Element.

Common Component Structure (Interface-driven syntax with Component Interafce)

<div>    <div>        <div>        </div>        <div>        </div>        <div>        </div>    </div></div>

Resources

About

A front-end methodology for robust/flexible/scalable HTML/CSS/JavaScript.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp