我有一些动态生成的div,其id = myFavDiv和class = myFavdiv,在我的应用程序的许多屏幕之间共享。 myFavDiv(ID选择器)的CSS如下所示。
#myFavDiv {
margin: 0px 20px 0px 20px;
}
但是,我有一个id =“ salesTotal”的特定div,并且在其中我可以动态生成myFavDiv。但是,在这种特殊情况下,即当“ myFavDiv”出现在“ salesTotal” div内时,页边距会导致布局问题。
是否有CSS方式通过某种选择器来处理/将边距设置为0(对于“ myFavdiv”而言),该选择器会说类似“仅当'myFavDiv'与'salesTotal'一起出现时,将填充设置为零。另外,请注意,“ myFavDiv”不直接位于“ salesTotal”内部。
我也可以通过某种Jquery方式来操纵此CSS。
我无法更改上面的CSS,因为它会错误地影响应用程序中的许多其他位置。
请指教,谢谢。
最佳答案
您只需添加带有后代选择器的第二条规则:
#salesTotal #myFavDiv {
margin: 0;
}
另外,还有一个好处:您可以将现有代码替换为:
#myFavDiv {
margin: 0 20px;
}
您不需要在0值后的
px
,并且如果您具有相同的顶部/底部和左侧/右侧,则可以删去第二组值(因此,0 20px
实际上最终会被浏览器为0 20px 0 20px
)。为了清楚起见,您的最终代码应为:
#myFavDiv {
margin: 0 20px;
}
#salesTotal #myFavDiv {
margin: 0;
}