合并html中某个元素的样式
来源:互联网 发布:mac ppt动画顺序调整 编辑:程序博客网 时间:2024/06/01 08:55
当定义很多个样式时,往往在页面中显示优先级高的样式,一些定义的样式就被屏蔽了,所以要合并自定义样式到一个span中,
protected string MergeStyle(string s)
{
string pattern = @"(<span[\s\S]*><span[\s\S]*>)[\u4e00-\u9fa5]+(</span></span>)+";
Regex regex = new Regex(pattern);
MatchCollection matches = Regex.Matches(s, pattern, RegexOptions.IgnoreCase | RegexOptions.ExplicitCapture);
foreach (Match m in matches)
{
string str = m.ToString();
string p1 = @"[\u4e00-\u9fa5]+";
Regex r1 = new Regex(p1);
Match m1 = r1.Match(str);
string s1 = m1.ToString();
System.Collections.Generic.List<int> al = new System.Collections.Generic.List<int>();
char[] strChars = str.ToCharArray();
for (int i = 0; i < strChars.Length; i++)
{
if (strChars[i] == '\"')
{
al.Add(i);
}
}
string style = "";
int tag = 1;
for (int i = 0; i < al.Count/2; i++)
{
if (i == 0)
{
style= str.Substring(al[i] + 1, al[i + 1] - al[i] - 1)+";";
}
else {
style+= str.Substring(al[tag + 1] + 1, al[tag + 2] - al[tag + 1] - 1)+";";
tag = tag + 2;
}
}
string newStyle = "<span style=\" " + style + "\" >" + s1 + "</span>";
s = regex.Replace(s, newStyle);
}
return s;
}
目前还有bug,当一些特殊情况就不能合并。在改进中
- 合并html中某个元素的样式
- 【软件测试】获取html页面中某个元素的XPath
- 获取html页面中某个父元素下相同子元素的个数
- 元素的某个子元素添加一些样式
- 在HTML元素中设置css样式
- html元素的部分常用默认样式
- javascript控制html里的元素样式
- JS操作HTML元素的CSS样式
- Js:getAttribute 取html中某个元素属性的值 或者设置添加属性和值
- Jquery 获取某个样式除第一个以外的元素
- html元素在IE和FF浏览器中默认的css样式[转]
- 统计矩阵中某个元素的个数
- html 中cursor的样式
- css样式中空白边的合并
- 一段html片段,得到其中的某个元素
- c#在后台文件中对html元素设置样式
- list中如何查找两个元素间的某个元素
- jq中寻找某个元素的特定兄弟元素
- 歌尔声学笔试
- uva10012(圆)
- uboot源码分析——stage 1
- XML命名空间
- LeetCode—Length of Last Word
- 合并html中某个元素的样式
- 最长公共子序列:HDU1159 Common Subsequence
- 动态规划求解矩阵链相乘问题
- 前端不为人知的一面--前端冷知识集锦
- android关于uses-permission权限列表
- 将 Django 应用程序部署到生产服务器
- 测试oracle连接池最大连接数
- 80x86汇编学习笔记
- 黑马程序员 java学习笔记 Day4:集合