`

去掉CSS中的表达式Expression

    博客分类:
  • CSS
阅读更多

 在IE中,CSS是可以嵌入js表达式的,可以在CSS类中定义,但是将含有表达CSS类从DOM对象中移除,样式表达式是不会失效的。

经过研究找到了答案,需要使用js调用style对象的removeExpression()方法才可去除。

下面是方法的说明:

 

语法

bSuccess = object.removeExpression(sPropertyName)

参数

sPropertyName Required. String that specifies the name of the property from which to remove an expression.

返回值

Returns one of the following possible values:

true The expression was successfully removed.
false The expression was not removed.

下面给出一个实用例子:利用样式限制图片最大宽度,通过一个按钮切换实际大小与缩放大小。

 

CSS类,作用:限制图片的最大宽度,超出指定宽度等比缩小。

.wrap {
	border:none;
	max-width:730px;
	height:auto;
	width:expression(this.width>730?"730px":true);/*ie6补丁*/
	}

 

 图片<img>

<img id="chart_img" class="chart" src="bond_big.jpg"/>

 

切换按钮

<span id="imgctr" style="cursor: pointer;display: block" onclick="showOrigin()">[原始大小]</span>

 

js代码(需要jQuery)

function showOrigin(){
	$('#chart_img').toggleClass("chart");
	
	if($('#chart_img').attr("class")){
		$('#imgctr').text("[原始大小]");
	}else{		
		$('#imgctr').text("[缩放大小]");
		$('#chart_img')[0].style.removeExpression('width');	/*ie6补丁*/
	}
	
}

  

这个事例只有在IE6中才能体现removeExpression()的作用,ie7以上是不需要的。

分享到:
评论

相关推荐

    CSS中expression使用简介

    CSS中的`expression`是一个特性,它允许在CSS样式规则中嵌入JavaScript表达式,使得CSS属性的值能够动态地根据JavaScript表达式的计算结果进行更新。这个特性在Internet Explorer 5及更高版本中被支持,但并非W3C的...

    CSS自定义属性Expression

    CSS自定义属性Expression是一种在CSS中添加自定义行为的方式,它允许开发者定义自己的CSS属性,并在这些属性中嵌入JavaScript代码来实现动态效果。这种方式在早期的CSS版本中较为常见,尤其是在Internet Explorer...

    DIV+CSS 高手也得看的15个CSS常识

    在CSS中,避免使用JavaScript表达式来设置样式是一种好习惯。虽然IE浏览器支持使用`expression`来动态更新样式,但这会导致性能问题。因为每当浏览器重绘页面时,都会重新计算表达式的值,这会显著降低页面性能。...

    php正则去除网页中所有的html,js,css,注释的实现方法

    2. 用于去除CSS的正则表达式: ```php "'[^&gt;]*?&gt;.*?&lt;/style&gt;'si" ``` 该表达式与去除JavaScript的表达式类似,只不过目标是匹配`&lt;style&gt;`标签及其内容。 3. 用于去除HTML标签的正则表达式: ```php "'&lt;[/!]*?[^]*?&gt;...

    去掉超链接的虚线框

    使用CSS表达式 另一种方法是在CSS中使用表达式,但这种方法不推荐,因为它的性能开销较大,且在某些情况下可能导致页面渲染问题。 ```css a {blr: expression(this.onFocus=this.blur())} ``` ### 结论 虽然有...

    CSS 隐藏代码大全

    在网页设计中,CSS(Cascading Style Sheets)是一种用于控制网页元素样式和布局的语言。在上述提供的“CSS隐藏代码大全”中,我们看到一系列的CSS规则,它们主要用于隐藏网页中特定部分,以达到定制化界面或者优化...

    div+css学习笔记(IE与fox好多不兼容的问题)

    例如,用`expression`去除链接边框的方法在Firefox中应使用`:focus`伪类配合`outline: none;`来实现。 4. **滚动条样式兼容性**: - Firefox并不支持直接通过CSS设置滚动条颜色,这与IE的`scrollbar-color`系列...

    [网页重构xhtml.css].css.hack.pdf

    可以使用JavaScript或CSS表达式来模拟此功能: ```css min-width: 300px; /* 或针对IE6 */ *html .element { width: expression(this.offsetWidth ); } ``` **8. 隐藏水平滚动条** 如果希望页面在所有情况下都...

    最全的CSS浏览器的兼容问题

    } // 注意这里的语法可能不是标准的CSS,而是针对IE的特定表达式 ``` 2. **Firefox等其他浏览器**: ```css a:focus { outline: none; } ``` #### 三、实现背景透明 为了实现背景透明效果,可以通过以下几种...

    css 去除连接时的虚线框

    根据给定文件信息,主要有两种方法可以去除链接时的虚线框,一种是使用CSS属性“outline”并将其值设置为“none”,另一种是使用一个特定于旧版IE浏览器的表达式。 1. 使用outline属性 outline是CSS的一个属性,它...

    css 图片自适应宽度 CSS实现控制图片自适应显示宽度代码

    `expression`是一种JavaScript表达式,可以动态计算CSS属性的值。针对IE6,我们可以这样编写CSS: ```css .fit_image { border: 0; max-width: 700px; /* 这里设置一个较大的值,以防止IE6在图片加载前应用错误的...

    Python使用正则表达式去除(过滤)HTML标签提取文字功能

    Python中的正则表达式是处理文本的强大工具,尤其在处理HTML文档时,它可以用来去除HTML标签,从而提取纯文本内容。在上述示例中,我们看到一个名为`filter_tags`的函数,它专门用于从HTML字符串中过滤掉标签并保留...

    去除图像或链接黑眼圈的两种方法总结

    在这个方法中,我们使用 Meta 标签和 CSS 表达式来去除图像或链接黑眼圈。 首先,我们需要在 HTML 头部添加以下 Meta 标签: ``` ; charset=gb2312"&gt; ``` 然后,我们使用以下 CSS 代码来去除焦点: ``` a {...

    javascript过滤危险脚本方法.docx

    4. **CSS表达式清理**:去除CSS中的`expression()`,确保其不再执行JavaScript。 然而,仅靠这些简单的过滤规则并不能完全防止XSS攻击。更复杂的情况,如HTML编码、URL编码和CSS特殊字符编码,都可能使过滤变得困难...

    css如何去掉点击a链接带来的虚框

    在某些设计风格中,这个虚框可能会影响页面的整体视觉效果,因此开发者常常需要找到方法来去掉这个虚框。 针对这个问题,有几种常见的 CSS 解决方案: 1. **设置 `outline` 属性为 `none`**: 这是最常见且跨...

    用css消除button/selcet等控件选中时的虚线框(让页面美观点)

    此外,代码中还包含了`blr:expression(this.onFocus=this.blur())`,这是一段针对旧版IE浏览器的JavaScript表达式,它的作用是在元素获取焦点时立即失去焦点,以此避免在IE中显示虚线边框。然而,由于现代浏览器已经...

    html消除点击超链接后产生的线框

    这里使用了`blr`属性,该属性并不存在于标准CSS中,而是一种特殊的写法,用于触发IE中的JavaScript表达式。`this.onFocus = this.blur();` 这段代码的作用是在获得焦点时立即移除焦点,从而达到消除虚线框的效果。 ...

    我在做网站的时候经常用到的东西,

    正则表达式也常用于网站后台的数据清洗,如去除无用的空格或特殊字符,确保数据库中的数据质量。 其次,网站设计涉及到多个层面,包括用户体验(UX)、界面设计(UI)、响应式布局以及交互设计。用户体验关注如何使...

    up_252196_hkit_4zf88.rar

    首先,我们要理解什么是正则表达式(Regular Expression)。正则表达式是一种模式匹配工具,可以用来检查一个字符串是否符合某种预定义的模式。在PHP中,我们可以使用`preg_match()`、`preg_match_all()`、`preg_...

Global site tag (gtag.js) - Google Analytics