在对焦模式下更改样式

by Typora.net
启用聚焦模式后,<body>dom将具有class on-focus-mode,而聚焦块级元素将具有class md-focus 可以包含md-focus类的块是不能包含子块并将包含md-end-block类的块。例如,<blockquote>可以包含子块(如)<p>,因此它没有md-end-block类,而h1具有该类。md-focus-container类将适用于li其中包含一个.md-focus块。 因此,我们可以在焦点模式下更改样式,例如:
/*Following are LESS code for better css structure*/

.on-focus-mode {
  /* under focus mode*/
  
  .md-end-block:not(.md-focus):not(.md-focus-container) {
    
    * {
      /* use color close to background for un-focused block */
      color: #C8C8C8 !important;
    }
    
    img{
      /* make img and element less attractive */
      opacity: 50%;
    }
  }
  
  .task-list-item:not(.md-focus-container)>input {
    /* make the check mark on task list less attractive*/
    opacity: 50%;
  }
  
  .md-fences.md-focus .CodeMirror-code>*:not(.CodeMirror-activeline) *,
  .CodeMirror.cm-s-inner:not(.CodeMirror-focused) * {
      /*lines in unfocused code fences, and unfocused lines in focused code fence*/
    color: #C8C8C8 !important;
  }
  
  li[cid]:not(.md-focus-container) {
    color: #C8C8C8 !important;
  }
  
  #typora-source .CodeMirror-code>*:not(.CodeMirror-activeline) * {
    /*source code mode under focus mode*/
    color: #C8C8C8 !important;
  }
  
  .md-focus,
  .md-focus-container {
    /* for text in current focused block */
    color: #111;
  }
 
}