2013-03-22 62 views
0

我有这段代码来显示一个对话框。删除子布局中的所有样式的DOM

$("#duplicateDialog").dialog({ 
    autoOpen: false, 
    modal: true, 
    resizable: false, 
    draggable: false, 
    buttons: { 
     "Cancel": function() { 
      $(this).dialog("close"); 
     }, 
     "OK": function() { 
      $(this).dialog("close"); 
     } 
    } 
}); 

$("#duplicateDialog").dialog("open"); 

问题是父布局已经改变了按钮的样式。

button { 
    height: 22px!important; 
    padding: 0 2px!important; 
} 

现在我想在子布局中删除上面的“高度”和“填充”。怎么做?

注:子布局extends从另一个布局,其中包括上述按钮样式。

回答

4

你可以给一个类的对话框按钮猜测上述的jQuery 1.8+

.... 
    buttons:{ 
       "cancel" : { 

       "class": 'myClass', 
       click: function() { 
} 
... 
+0

@hazzik感谢您的编辑。 – PSL 2013-03-22 02:36:23

+0

它的工作原理!我定义了一个重要的高度和填充类并申请它。 – Emerald214 2013-03-22 03:15:05

2

如果它们存在,唯一会覆盖这些样式的内联样式也具有!重要。所以,<button style="height: 0 !important; padding: 0 !important;"></button>

你可以通过jQuery找到它们被添加的位置,可能会使用append()或prepend()。并添加内嵌样式出现,所以是这样的:

$('.parent').append('<div class="yourSituation" style="border: 0; padding: 0;"></div>'); 
+0

但是该对话框的按钮由JQuery生成。如何为他们设置“style”属性? – Emerald214 2013-03-22 02:30:54

+0

查看上面的编辑... – dezman 2013-03-22 02:34:43

0

只给你另一种选择... Apprise允许为自定义CSS类 - className - 在按钮上。