CSSCore用于添加、移除、判断是否包含某个样式类,以及是否某个校验器。
'use strict'; // 首参否值报错 var invariant = require('./invariant'); // 通过父节点判断元素element是否匹配某个选择器selector function matchesSelector_SLOW(element, selector) { var root = element; while (root.parentNode) { root = root.parentNode; } var all = root.querySelectorAll(selector); return Array.prototype.indexOf.call(all, element) !== -1; } var CSSCore = { // 添加样式类 addClass: function addClass(element, className) { !!/\s/.test(className) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'CSSCore.addClass takes only a single class name. "%s" contains ' + 'multiple classes.', className) : invariant(false) : void 0; if (className) { if (element.classList) { element.classList.add(className); } else if (!CSSCore.hasClass(element, className)) { element.className = element.className + ' ' + className; } } return element; }, // 移除样式类 removeClass: function removeClass(element, className) { !!/\s/.test(className) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'CSSCore.removeClass takes only a single class name. "%s" contains ' + 'multiple classes.', className) : invariant(false) : void 0; if (className) { if (element.classList) { element.classList.remove(className); } else if (CSSCore.hasClass(element, className)) { element.className = element.className.replace(new RegExp('(^|\\s)' + className + '(?:\\s|$)', 'g'), '$1').replace(/\s+/g, ' ') // multiple spaces to one .replace(/^\s*|\s*$/g, ''); // trim the ends } } return element; }, // 按第三个参数布尔值添加或移除样式类 conditionClass: function conditionClass(element, className, bool) { return (bool ? CSSCore.addClass : CSSCore.removeClass)(element, className); }, // 判断元素是否包含某个样式类 hasClass: function hasClass(element, className) { !!/\s/.test(className) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'CSS.hasClass takes only a single class name.') : invariant(false) : void 0; if (element.classList) { return !!className && element.classList.contains(className); } return (' ' + element.className + ' ').indexOf(' ' + className + ' ') > -1; }, // 判断元素是否匹配某个选择器 matchesSelector: function matchesSelector(element, selector) { var matchesImpl = element.matches || element.webkitMatchesSelector || element.mozMatchesSelector || element.msMatchesSelector || function (s) { return matchesSelector_SLOW(element, s); }; return matchesImpl.call(element, selector); } }; module.exports = CSSCore;
相关推荐
postcss core.css \ -u postcss-import \ -u postcss-css-variables \ -u cssnano \ -o ./build.css --no-map 充分 postcss raw/* \ -u autoprefixer \ -d src --no-map \ && \ postcss cor
在前端开发领域,"core.css.zip" 这个文件标题暗示了一个重要的概念——核心样式表。这通常是指一个项目的基石,包含了一些基本的、全局的CSS样式规则,用于确保整个网站或应用程序有一致的视觉呈现和用户体验。...
**Core CSS 知识点详解** Core CSS 是一本专注于CSS(Cascading Style Sheets)核心概念和技术的英文原版教程。CSS是网页设计中的关键部分,用于定义网页内容的布局和样式,使得网页呈现更加美观且易于维护。本书...
quill.core.css
这是我为期一个月的实习项目。 CLient是AXIS Bank的一个分支机构,希望更改 (票务软件)的UI以反映AXIS Bank的主题。 内容 部署和使用 ... Core.AgentTicketQueue.css Core.Default.css Core.Form.cs
《Core CSS 参考书》是由著名的Web设计大师、《CSS禅意花园》的作者撰写的一系列关于CSS(层叠样式表)的参考资料。这本书旨在深入解析CSS的核心概念和技术,帮助读者掌握网页设计中的样式控制,提升网页布局与美化...
(quill.bubble.css,quill.core.css,quill.snow.css)
官方蓝牙资料,蓝牙协议文档 This supplement contains information related to data types, common Profile and Service error codes, and enumerates the services permitted to use Security Mode 4 Level 0
《CSS核心技术详解与开源项目libhyphen的Java实现》 在互联网开发中,CSS(Cascading Style Sheets)作为网页样式控制的核心技术,扮演着至关重要的角色。它赋予HTML或XML文档丰富的视觉表现力,使得网页设计既美观...
在这个项目中,我们看到Aui-core与CSS3的`transform`属性相结合,来实现更丰富的视觉效果和动态交互。 `transform`属性是CSS3中的一个强大特性,它允许我们对元素进行二维或三维的变换,如旋转、缩放、平移和倾斜等...
**MOSS 2007 CORE.CSS样式文件解析** Microsoft Office SharePoint Server (MOSS) 2007 是一个企业级的信息管理和协作平台,它基于ASP.NET技术,并使用CSS(层叠样式表)来控制页面的布局和外观。CORE.CSS是MOSS ...
BootStrap Custom Theme CSS
CSS v6即CSS版本6是蓝牙核心规范的补充版,它为蓝牙4.0版本的蓝牙核心规范提供了一种新的补充。蓝牙4.0版本相较于之前的版本而言,主要的改进在于低功耗模式的引入,这使得蓝牙技术在移动设备和便携式设备的应用得到...
const extractCss = require ( 'extract-css-core' ) const css = await extractCss ( 'https://www.projectwallace.com' ) //=> html{font-size:100%} etc. 或者,如果您需要更多详细信息: const entries = ...
.NET提供了ASP.NET MVC和ASP.NET Core等技术,结合CSS模板,可以快速构建功能完备的后台管理系统。 以上是后台经典CSS模板中的主要知识点,熟练掌握这些内容,可以极大地提高后台界面的设计效率和用户体验。在实际...
它提供了一种模型-视图-控制器(MVC)架构,以及Web Forms和ASP.NET Core等不同的开发模式。ASP.NET提供了丰富的控件、自动状态管理、强大的身份验证和授权机制,以及易于部署和配置的优势。开发者可以使用C#或VB...
- CSS和SCSS文件:这些文件定义了模板的样式,SCSS是Sass语言,可以方便地进行样式定制和扩展。 - JavaScript和jQuery文件:用于实现交互效果和动态行为。 - 图片资源:如背景图、logo等,用于增强界面的视觉效果。 ...
【JSTL】是Java服务器页面的标准标签库,它提供了一系列标签来简化JSP的编程,特别是`Core_标签库介绍.doc`,将详细解释如何使用JSTL的核心标签库,包括条件语句、循环、URL处理等,极大地提高了JSP的可读性和可维护...
EL用于在JSP页面中简洁地表达Java表达式,JSTL则提供了一系列标签库,如Core、XML、HTML、Form等,使得JSP页面更加清晰、易读。 综上所述,JSP和CSS的结合使用是Web开发中的常见实践,它们各自负责不同的职责,协同...