本质就是根据一套设定的规则用编程语言(js、asp、php、ruby..)来判断处理字符串
格式前:
格式后:
只说一种大致原理,具体实现有很多算法:
规则:根据html里<>是一个元素开始,>是一个元素结束来查找元素
程序读到第一个就去找与之对应的
然后又去找之间有无能配对的<>>,没有的话则不处理
有子元素的话,就需要插入换行把子元素和父级分开(同时处理细节,如父子标签之间多余的空格、插入tab缩进等)
然后又去找里面有没有配对的<>>,没有则不处理,有的话则向前面几步一样循环往复的查找、处理
------------------------------------------------------
css格式化的大概规则:
body{color:red;}.myclass{font-size:12px;}#myid span{width:100px;color:yellow;}
找配对的{},里面的玩意根据;为结尾的规则换行:
{
width:100px;
color:yellow;(最后一句可以不写这个“;”所以这种情况也要考虑)
}
加点tab缩进:
{
width:100px;
color:yellow;
}
还有就是判断一对{...}外面那些字符,加入换行:
body{}
.myclass{}
#myid span{}
最后你看到的就是:
body{
color:red;
}
.myclass{
font-size:12px;
}
#myid span{
width:100px;
color:yellow;
}
具体实现中,上面的还有很多情况也是要考虑的,比如写代码的人忘了写