当前位置: 首页 > 编程日记 > 正文

简短的几句js实现css压缩和反压缩功能

写在前面

最近一直在整理css,但因为现在Visual Studio 2013太智能了,它每每在我按ctrl+E+D进行格式化代码的时候,就会将css进行层次格式化(如下图所示),而这个格式让我老大实在无法忍受,我老大认为它实在是太浪费空间了。

那我应该怎么办呢,每次将本地代码上传之前都打开另外一个vs10,然后复制粘贴,可是下次从服务器拉下来代码我一编辑,手痒一下就又变成上面这个鬼样,折磨的我呀

刚刚看了豪情的一篇文章,http://www.cnblogs.com/jikey/archive/2010/04/19/1715474.html  才发现有这么简单的方法来实现css的格式化,瞬间觉得弱爆了

CSS压缩效果见下

body * { font-size:10pt; }/* ss sda */ p { clear:left; padding:5px 10px; } td , fieldset { padding : 10px ; } textarea { width:90%; height:10em; }
压缩代码 格式(多行) 格式(单行) 还原代码

大家可以点击上面的“压缩代码”、“格式多行”等按钮试一下效果

JS实现CSS压缩及格式化原理

    <script type="text/javascript">function $(id) { return document.getElementById(id); }function cssCode(obj) {this.init = function () {var code = obj.value;if (!this.code || this.code == "") this.code = code;//先保存起来  以方便后续还原code = code.replace(/(\n|\t|\s)*/ig, '$1');code = code.replace(/\n|\t|\s(\{|\}|\,|\:|\;)/ig, '$1');code = code.replace(/(\{|\}|\,|\:|\;)\s/ig, '$1');return code;}this.compress = function () {var code = this.init();return code;}this.format = function () {var code = this.init();code = code.replace(/(\{)/ig, ' $1');code = code.replace(/(\{|\;)/ig, '$1\n\t');code = code.replace(/\t*(\})/ig, '$1\n');code = code.replace(/(\*\/)/ig, '$1\n');return code;}this.formatOver = function () {var code = this.init();code = code.replace(/(\})/ig, '$1\n');code = code.replace(/(\*\/)/ig, '$1\n');return code;}this.recover = function () {return (this.code) ? this.code : obj.value;}var my = this;obj.onkeydown = function () {my.code = "";}}var code = new cssCode($('cssCode'));</script>

大家看到没有,简简单单的几句话,也就是利用正则将换行、tab键、空格等去掉来实现压缩。

哎,发现自己太弱了,还是应该多跟园子里的大神学习下。(写这篇博文的意义还在于,原来让自己的博文上出现界面展示效果其实原理也很简单,只要把相关script和style插入到博文的html里面就可以了

相关文章:

迁移学习前沿研究亟需新鲜血液,深度学习理论不能掉链子

作者 | Frederico Guth&#xff0c;Tefilo Emidio de Campos编译 | 夕颜出品 | AI科技大本营(ID:rgznai100)【导读】人类可以从很少的样本中学习&#xff0c;显示出了人类卓越的泛化能力&#xff0c;而这一点学习算法仍远做不到。当前&#xff0c;最成功的模型需要大量标记好的…

WMI技术介绍和应用——查询磁盘分区和逻辑磁盘信息

本文使用了《WMI技术介绍和应用——使用VC编写一个半同步查询WMI服务的类》中代码做为基础。本节只是列出了WQL语句&#xff0c;具体使用参看前面的例子。&#xff08;转载请指明出于breaksoftware的csdn博客&#xff09; 本节主要介绍Win32_DiskPartition和Win32_LogicalDisk两…

用 jQuery 的 AJAX 功能发现的一个错误/注意点:HTTP Error 411

今天程序中有个地方需要 Ajax 方式 POST 数据&#xff0c;发现在 IE 6.0 下正常&#xff0c;而 FireFox 2.0.0.9 下则出错。通过 FireBug 抓取 ajax 回发后得到的页面信息如下&#xff1a;HTTP Error 411 - Length required 经过 google 搜索发现&#xff0c;这个 HTTP 状态码对…

jquery 取消 radio checked 属性,重新选中的问题解决

<input type"radio" name"test"/> <input type"radio" name"test" id "input2"/> (说明&#xff1a;使用的jquery 版本是 1.10.2。) 使用 jquery 的removeAttr(),清除掉 radio 的checked属性后。使用 attr(…

使用×××版软件中常见的一些错误代码

1、错误代码&#xff08;691&#xff09;&#xff1a;由于域上的用户名或密码无效而拒绝访问。如果是使用的易游提供的服务器&#xff0c;请在帐务系统确认使用的帐号是否状态正常&#xff0c;刚设置好的帐号需要等5分钟才能使用。如果是外部服务器请直接找服务器提供商。2、错…

程序员在地铁写代码遭疯狂吐槽!网友:装什么装

01作为了解程序员这个行业的人来说程序员的工作真的很累加班已经成为他们的标签有的时候网站出事或者需求比较紧急的时候可能路边也是他们的工作场地所以这个时候对于程序员们的工作来说也是不分场合的02之前看到网上有人拍到程序员在地铁上写代码的照片并将之发到网络上 图片一…

如何定制一款12306抢票浏览器——构架

快春节了&#xff0c;火车票一票难求。虽然黄牛市场冷淡了&#xff0c;但是互联网“娱乐界”却越来越闹腾了。先是猎豹等浏览器推出抢票专版&#xff08;插件&#xff09;&#xff0c;然后是铁道部约谈金山&#xff0c;之后流传工信部叫停抢票插件&#xff0c;之后再是工信部出…

一些链接, 关于不可变数据

这篇笔记介绍不可变数据, Persistent Data Structure 和 Immutable. 但是不深入数据结构实现, 函数式编程理论. 定义 https://en.wikipedia.org/wiki/Persistent_data_structure In computing, a persistent data structure is a data structure that always preserves the pre…

囚犯学会编程之后会发生什么?

作者 | Simone Stolzoff译者 | 苏本如&#xff0c;责编 | 郭芮出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;【导读】Slack是硅谷一家多元化的公司&#xff0c;它雇佣了三名以前被监禁的程序员。但事实上&#xff0c;当一个人从监狱获释时&#xff0c;监禁的耻辱…

如何定制一款12306抢票浏览器——用户界面

用户界面 我不打算写个Windows界面。因为这个软件的全部就是个浏览器。我准备将”浏览器“进行到底&#xff0c;所以我选择使用html作为我们的用户界面。我也并不打算从头开始写一个浏览器&#xff0c;我使用了《内嵌IE网页窗口中消除IE默认脚本设置影响的方法》中基于WTL的浏览…

Study on Android【四】--显示控件使用

Android的界面显示同样也是基于控件的。通常是用View&#xff08;包括ViewGroup&#xff09;控件配上XML的样式来做的。具体细节不想说了&#xff0c;可以参考 Samples里的ApiDemos/View&#xff0c;和View的Doc&#xff0c;以及Implementing a UI这篇Doc。其他还有很多&#x…

修改Vim配色方案

1. 查看备选的配色方案/usr/share/vim/vim74/colors2. 查看当前使用的配色方案在命令模式下输入 :colorscheme可见当前使用的配色方案为ron3.选择和设置配色方法编辑 ~/.vimrc文件&#xff0c;如选择ron.vim对应的配色方案&#xff0c;则添加 colorscheme ron4. 设置某项颜色--…

如何定制一款12306抢票浏览器——启动“人”线程

启动“人”线程 在《如何定制一款12306抢票浏览器——构架》一文中&#xff0c;我们提到“人”线程。对于熟悉Window编程的同学来说&#xff0c;线程间通信和信息传递不是难题。但是由于浏览器和我们“人”线程之间传递的是COM对象&#xff0c;这个过程就没有那么简单了。&…

看看你是《老朋友》(青春六人行)里的哪一个

&#xff08;点击“which friends character are you?”连接可以进入问卷页面&#xff09; Which Friends Character Are You? You are Rachel. Youre very selfish and pay great attention to image. Spoiled when you were young, you were always the popular and sn…

360金融沈赟:只有适配实践的技术才能实现价值掘金

金融科技应用的新场景、新需求层出不穷,已成为创新技术的理想“试验田”。然而当“创新”浪潮褪去&#xff0c;行业回归审慎与冷静后不难发现&#xff0c;并非所有创新技术都会深入金融土壤。对此&#xff0c;360金融首席数据科学家沈赟认为&#xff0c;只有适配实践的技术才能…

swift(一)基础变量类型

import Foundationprintln("Hello, World!")/*int a; */ var a 10 //隐式类型转换 a 9 println(a)let b 10 println(b)/* 类型标注 *///var x:Int //x 10.3不支持隐式转换let x: Int 10/* 名称不用在符合标示符的规范 */ let 常量 10/* 基本数据类型&#xff1…

如何定制一款12306抢票浏览器——实现自动查询和预订功能

检查是否进入订票页面 判断是否进入订票页面&#xff0c;我是确定了两个标准&#xff1a;&#xff08;转载请指明出于breaksoftware的csdn博客&#xff09; 1 网址是否为http://www.12306.cn/mormhweb/kyfw/ 2 该页面否有查询按钮 BOOL CDeal12306WebPage::IsQueryPage( CComPt…

以数据为中心,立足六大技术支柱,英特尔推动神经拟态计算、量子计算前沿探索

近日&#xff0c;英特尔中国研究院院长宋继强围绕 “英特尔如何构建技术基石&#xff0c;驱动未来计算”为主题做了演讲。他阐述了英特尔将坚持“以数据为中心”的目标&#xff0c;并指出依托于XPU产品组合&#xff0c;英特尔通过异构整合和oneAPI软件平台来推动实现超异构计算…

Fedora 7 播放器totem

说实话&#xff0c;我喜欢这个东东&#xff0c;简约而不简单。我以前一直用mplayer&#xff0c;不过还是喜欢totem的长相。很多人说不能播放&#xff0c;可以这么做&#xff0c;让它支持全部(用mplayer的codecs)&#xff1a;(1)首先将系统已有的totem移去 # yum remove totem(2…

如何定制一款12306抢票浏览器——处理预订页面和验证码自动识别功能

判断是否进入预订页面我们先看一下预订页面的结构&#xff08;转载请指明出于breaksoftware的csdn博客&#xff09;可以见得&#xff0c;这个页面也是嵌入了两个IFrame。关于IFrame的跨域问题&#xff0c;我已经在前一篇文章中讲述了解决办法。我判断是否是预订页面是通过两个依…

利用MTCNN和FaceNet实现人脸检测和人脸识别 | CSDN博文精选

作者 | pan_jinquan来源 | CSDN博文精选&#xff08;*点击阅读原文&#xff0c;查看作者更多文章&#xff09;人脸检测和人脸识别技术算是目前人工智能方面应用最成熟的技术了。本博客将利用MTCNN和FaceNet搭建一个实现人脸检测和人脸识别的系统。基本思路也很简单&#xff0c;…

[导入]郁闷`````[原]

阅读全文 类别&#xff1a;职场生涯 查看评论文章来源:http://hi.baidu.com/huqing7002/blog/item/b69a27082063fbd263d98619.html转载于:https://www.cnblogs.com/huqing7002/archive/2007/12/14/1007049.html

code标签的妙用

code标签的秒用是&#xff1a; 当你写了一大版的css或者html或者其他代码&#xff0c;想要去掉代码中多余的空格和换行从而达到压缩的目的的时候&#xff0c;可以新建一个html文件&#xff0c;然后把想要压缩的代码段放到code标签里&#xff0c;保存&#xff0c;浏览器浏览&…

如何定制一款12306抢票浏览器——完结篇

差不多花了一个星期的业余时间去完成了相关的编码。最后也只是使用了5篇文章将整个大题流程和使用的关键技术介绍了一下。其中有很多酸甜苦辣,其中记忆最为深刻的就是我对图像做了处理后,tesseract-ocr对验证码识别的准确度提升非常大。当我还沉浸子在这片喜悦之中时,12306将…

所有各数据库或文件的连接串定义CHM文件.

从www.connectionstrings.com 中制作生成/Files/margiex/DotnetConn.rar

钢铁侠“变身”AI布道师?小罗伯特·唐尼这次推出一部AI科普纪录片

作者 | 若名出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;穿着一身运动便服&#xff0c;脱去了铠甲的“钢铁侠”托尼斯塔克最近出现在荧屏上&#xff0c;他正与身后的AI助手互动&#xff0c;一本正经讲解着“机器学习”、“算法”这些词汇。不过&#xff0c;这个AI…

Wireshark数据抓包教程之Wireshark的基础知识

Wireshark数据抓包教程之Wireshark的基础知识 Wireshark的基础知识 在这个网络信息时代里&#xff0c;计算机安全始终是一个让人揪心的问题&#xff0c;网络安全则有过之而无不及。Wireshark作为国际知名的网络数据抓包和分析工具&#xff0c;可以广泛地应用各种领域&#xff0…

WMI技术介绍和应用——查询快捷方式、映射磁盘和虚拟内存信息

本文使用了《WMI技术介绍和应用——使用VC编写一个半同步查询WMI服务的类》中代码做为基础。本节只是列出了WQL语句&#xff0c;具体使用参看前面的例子。&#xff08;转载请指明出于breaksoftware的csdn博客&#xff09; 因为将要介绍的三个模块都比较简单&#xff0c;故将这三…

不要痴迷蓝牙耳机了,出门选这个准没错,99W+人的选择

01有一种耳机啊它是真的不适合在长途火车上使用那就蓝牙耳机除非你带充电宝还有一种耳机啊它是真的不适合丢那就是带有充电仓的耳机因为充电仓丢了这个耳机基本上就废了02这不&#xff0c;我就经历了&#xff0c;活生生的例子出差的路上在火车上把耳机充电仓给弄丢了只剩孤零零…

结构化文件存取

纲要:AssignFile: 关联Rewrite: 创建并打开一个新文件, 如已存在则覆盖Reset: 打开已存在的文件; 追加也要用它先打开, 然后再移动指针; Append 是文本文件专用的CloseFile: 关闭FileSize: 记录数FilePos: 返回文件的当前位置Seek: 把文件指针移到指定位置(只用于结构化文件)Eo…