YUS框架之uc颜色控制指令

2023-12-07 11:50

本文主要是介绍YUS框架之uc颜色控制指令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

yus将css常用属性简单的划分为两大类,即尺寸、颜色。yus认为所有px,pt,em,cm,vw,vh或者百分比符号%,都是尺寸的计量单位,可以使用us命令进行渲染;而#f00 , #ff00 , rgb(255,0,0) , rgba(255,0,0,1)这一类的色彩的渲染,则由uc命令来完成。

例如:

<div class="solid uc-c-f00 uc-bdc-f00 us-bw-1">红色边框</div>

解析如下:

solid 是系统内置css样式,边框线型为实线。

uc-c-f00 字体颜色为红色

uc-bdc-f00 边框颜色为红色

us-bw-1 边框宽度为 1px 像素

同理,因为字体颜色与边框颜色相同,上面的代码可以简写为如下格式:

<div class="solid uc-c,bdc-f00 us-bw-1">红色边框</div>

UC指令说明

项目

描述

语法

指令由三部分部分,第一部分uc声明颜色指令,第二部分为参数属性缩写,第三部分为rgb颜色。

示例:uc-属性参数-f00。

属性参数

是CSS属性的缩略写法,如c代表color,bg代表background,详情参见下列《属性参数表》

rgb

颜色代码格式:FF0000,或f00,或者rgb(255,0,0),也可以是rgba(255,0,0,0.5)。

示例:uc-c-ff0或us-c-rgba(0,0,0,0.3)

n

向下延伸层级,例如n为3时,影响第三代子元素,即children().children().children()

属性参数表

属性参数

示例

CSS写法

功能描述

c

uc-c-f00

{color:#f00;}

文本颜色,可以用16进制编码值,例如ff0000,或者f00,这两者是等价的。另外也可以用rgb颜色数值,或者rgba设置透明度,rgb需要使用方括号[]框起来。

例如:

<span class="uc-c-f00">红色文本</span>

<span class="uc-c-[rgba(255,0,0,0.3)]">红色文本</span>

oc

uc-oc-f00

{outline-color:#f00;}

边框轮廓颜色。

例如:

<span class="sol us-ow-1 uc-oc-f00">红色轮廓</span>

说明:sol是《内置样式》表示outline-style:solid;,us-ow-1代表轮廓线宽度为1像素。

bg

uc-bg-f00

{background:#f00;}

背景颜色。

例如:

<span class="uc-bg-f00">红色背景</span>

bdc

uc-bdc-f00

{border-color:#f00;}

边框颜色。

例如:

<span class="uc-bdc-f00">红色边框</span>

btc

uc-btc-f00

{border-top-color:#f00;}

边框上方颜色。

例如:

<span class="uc-btc-f00">边框上方红色</span>

brc

uc-brc-f00

{border-right-color:#f00;}

边框右侧颜色。

例如:

<span class="uc-brc-f00">边框右侧红色</span>

bbc

uc-bbc-f00

{border-bottom-color:#f00;}

边框下方颜色。

例如:

<span class="uc-bbc-f00">边框下方红色</span>

blc

uc-blc-f00

{border-left-color:#f00;}

边框左侧颜色。

例如:

<span class="uc-blc-f00">边框左侧红色</span>

子级管控

yus作者本身是一个懒人,所以yus框架尽最大可能去做到简便,那么父元素控制子元素,这项功能就不得不提上日程,指令说明语法中的n,即子元素后代层级数,例如n=1的情况下,表示子级;n=2表示孙级;n=3表示重孙级。

举例说明:

<ul class="us-ml-2em us-w,h-50-1 us-mr-10-1 uc-bg-f00-1 nl-[block_fl]">

<li></li>

<li></li>

<li></li>

</ul>

运行效果如下:

详细解释:

us-ml-2em,代表ul元素左边距2个字符,即{margin-left: 2em;}

us-w,h-50-1,代表ul的所有子元素li,宽、高均为50像素,即<li style="width: 50px; height: 50px">

us-mr-10-1,代表ul的所有子元素li,右边距10像素,即<li style="margin-right: 10px">

uc-bg-f00-1,代表ul的所有子元素li,背景颜色红,即<li style="background: #f00">,uc指令参见《uc颜色指令》

nl-[block_fl],给子元素添加block、fl两个class样式,即<li class="block fl">,nl指令参见《nl子级管控》

进阶教程

再举一个粟子:

<table class="us-ml-2em ac us-borderCollapse-collapse us-w,h-50-3 us-bo-[1px_solid_#666]-3 uc-bg-ff0-3 group-tb">

<tr class="nl-[white uc-bg-00f]-even">

<td>1</td>

<td>2</td>

<td>3</td>

<td>4</td>

</tr>

</table>

<div class="us-h-20"></div>

<table class="tb">

<tr>

<td>1</td>

<td>2</td>

<td>3</td>

<td>4</td>

</tr>

</table>

运行效果如下:

详细解释:

us-ml-2em,代表table表格左边距2个字符,即{margin-left: 2em;}

ac,代表元素内文字居中,这是《内置样式》,即{text-align: center;}

us-borderCollapse-collapse,代表合并折叠表格边框,这是一个典型的驼峰语法,即{border-collapse: collapse;}

us-w,h-50-3,代表table的所有三代子元素td,宽、高均为50像素,即<td style="width: 50px; height: 50px">。看到这里,有的同学可能会问,明明从table > tr > td,这怎么数都是两层子级,为什么是3不是2呢?What?纳尼?咋了?其实如果获取table元素并且console.log()输出会就发现,在talbe与tr中间会自动生成一个TBODY标签,那么这样算起来,还真应该是三代子元素。或许不同的浏览器,会有不同的解析方式,这些作者没有过多研究,所以只是简单提一下,遇到这种情况,诸位输出元素看一看就会得出问题症结所在。

us-bo-[1px_solid_#666]-3,代表宽1像素,实线,深灰色边框,即{border: 1px solid #666;}

uc-bg-ff0-3,代表三代子元素td背景为黄色,即{background: #ff0;}

group-tb,指令组合,将此指令之前的所有样式及指令集合copy,tb是组名,其它元素使用时,直接书写这个组名,即可拉取指令集合。

tb,拉取group生成的指令集合。

nl-[white uc-bg-00f]-even,子级管控,前文曾有过介绍,这里在表达式后面加了一个even参数,即表达式只对偶数子级元素生效。表达式里的white为子元素文字白色《内置样式》,uc-bg-00f为子元素背景蓝色,表达式里的分项可以用空格,也可以用下划线“_”符号分隔。

Yus框架官网:

http://www.runyus.com

这篇关于YUS框架之uc颜色控制指令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/465768

相关文章

cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个?

跨平台系列 cross-plateform 跨平台应用程序-01-概览 cross-plateform 跨平台应用程序-02-有哪些主流技术栈? cross-plateform 跨平台应用程序-03-如果只选择一个框架,应该选择哪一个? cross-plateform 跨平台应用程序-04-React Native 介绍 cross-plateform 跨平台应用程序-05-Flutte

Spring框架5 - 容器的扩展功能 (ApplicationContext)

private static ApplicationContext applicationContext;static {applicationContext = new ClassPathXmlApplicationContext("bean.xml");} BeanFactory的功能扩展类ApplicationContext进行深度的分析。ApplicationConext与 BeanF

数据治理框架-ISO数据治理标准

引言 "数据治理"并不是一个新的概念,国内外有很多组织专注于数据治理理论和实践的研究。目前国际上,主要的数据治理框架有ISO数据治理标准、GDI数据治理框架、DAMA数据治理管理框架等。 ISO数据治理标准 改标准阐述了数据治理的标准、基本原则和数据治理模型,是一套完整的数据治理方法论。 ISO/IEC 38505标准的数据治理方法论的核心内容如下: 数据治理的目标:促进组织高效、合理地

ZooKeeper 中的 Curator 框架解析

Apache ZooKeeper 是一个为分布式应用提供一致性服务的软件。它提供了诸如配置管理、分布式同步、组服务等功能。在使用 ZooKeeper 时,Curator 是一个非常流行的客户端库,它简化了 ZooKeeper 的使用,提供了高级的抽象和丰富的工具。本文将详细介绍 Curator 框架,包括它的设计哲学、核心组件以及如何使用 Curator 来简化 ZooKeeper 的操作。 1

【Kubernetes】K8s 的安全框架和用户认证

K8s 的安全框架和用户认证 1.Kubernetes 的安全框架1.1 认证:Authentication1.2 鉴权:Authorization1.3 准入控制:Admission Control 2.Kubernetes 的用户认证2.1 Kubernetes 的用户认证方式2.2 配置 Kubernetes 集群使用密码认证 Kubernetes 作为一个分布式的虚拟

Spring Framework系统框架

序号表示的是学习顺序 IoC(控制反转)/DI(依赖注入): ioc:思想上是控制反转,spring提供了一个容器,称为IOC容器,用它来充当IOC思想中的外部。 我的理解就是spring把这些对象集中管理,放在容器中,这个容器就叫Ioc这些对象统称为Bean 用对象的时候不用new,直接外部提供(bean) 当外部的对象有关系的时候,IOC给它俩绑好(DI) DI和IO

Sentinel 高可用流量管理框架

Sentinel 是面向分布式服务架构的高可用流量防护组件,主要以流量为切入点,从限流、流量整形、熔断降级、系统负载保护、热点防护等多个维度来帮助开发者保障微服务的稳定性。 Sentinel 具有以下特性: 丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应

利用Django框架快速构建Web应用:从零到上线

随着互联网的发展,Web应用的需求日益增长,而Django作为一个高级的Python Web框架,以其强大的功能和灵活的架构,成为了众多开发者的选择。本文将指导你如何从零开始使用Django框架构建一个简单的Web应用,并将其部署到线上,让世界看到你的作品。 Django简介 Django是由Adrian Holovaty和Simon Willison于2005年开发的一个开源框架,旨在简

Yii框架relations的使用

通过在 relations() 中声明这些相关对象,我们就可以利用强大的 Relational ActiveRecord (RAR) 功能来访问资讯的相关对象,例如它的作者和评论。不需要自己写复杂的 SQL JOIN 语句。 前提条件 在组织数据库时,需要使用主键与外键约束才能使用ActiveReocrd的关系操作; 场景 申明关系 两张表之间的关系无非三种:一对多;一对一;多对多; 在

laravel框架实现redis分布式集群原理

在app/config/database.php中配置如下: 'redis' => array('cluster' => true,'default' => array('host' => '172.21.107.247','port' => 6379,),'redis1' => array('host' => '172.21.107.248','port' => 6379,),) 其中cl