display:none
如果在外部样式表中设置样式与内联样式,为什么单击后图像不显示?
问问题
1089 次
1 回答
1
要显示被 隐藏的图像display: none;
,必须将显示属性恢复为其原始显示属性。
display: block; /* use if you made the image if it floated or acts like a <div> */
display: inline; /* default image display type (USE THIS ONE) */
我注意到在您的代码中:
targetid.Style.Add("display", "");
您试图通过声明显示属性“空白”来显示图像。这不起作用,因为display: NULL
它不是 CSS 属性,并导致浏览器忽略其值并恢复使用display: none;
. 图像保持隐藏状态,您的预期行为未应用。
进一步讨论
虽然我希望我的解决方案有助于解决问题,但我确实有一个解决方案:
而不是使用“显示:无;” 要隐藏一个元素,然后通过将值恢复为其原始属性来取消隐藏它,请执行以下操作:
添加一个名为“.hidden:
.hidden { display: none;}
每当你想让一个元素消失时,只需将类“.hidden”添加到元素中。当您想再次显示该元素时,只需删除该类。
优点有两点:
- 消除了恢复到原始值和必须区分显示的要求:inline、block、inline-block 等。
- 在整个 Web 应用程序中标准化隐藏组件。
问候和祝你好运。
于 2013-06-27T14:48:13.303 回答