jEditable 输入框 CSS 样式

Posted

技术标签:

【中文标题】jEditable 输入框 CSS 样式【英文标题】:jEditable input-box CSS style 【发布时间】:2010-09-14 14:25:18 【问题描述】:

我正在尝试设置使用 jEditable 呈现的输入框的样式。

我想在双击文本并使其可编辑时更改表格单元格的颜色。像这样:

alt text http://www.hongaijitsu.com/temp/foobar/public/Picture-2.png

这是我现在所在的位置:jEditable CSS Problem(双击表格单元格中的文本)

html sn-p:

<tr class="odd">
    <td class="dblclick" headers="customer-name">Drogo Shankara</td>
    <td class="dblclick" headers="mail">dshan@gmail.com</td>
    <td class="dblclick" headers="type">Web</td>
    <td class="dblclick" headers="status">Pending mail</td>
</tr>  

jQuery 代码:

$(function() 

$(".dblclick").editable("#",  
    tooltip   : "Doubleclick to edit...",
    event     : "dblclick",
    css : 'inherit'
    );
);

对应的CSS:

.dblclick form 
    height: inherit !important;
    width: inherit !important;
    border: 0;  
    margin: 0;
    padding: 0;
    background: red;
    

.dblclick input 
    height: inherit !important;
    width: inherit !important;
    border: 0;  
    margin: 0;
    padding: 0;
    font: inherit;
    color: inherit;
    

我希望输入框从父表格单元格继承高度和宽度,但是当我在 Firebug 中查看输入框时,它已经设置了内联 CSS 高度和宽度,导致表格单元格按下td 文本时进行缩放。我尝试用 inherit !important 覆盖内联 CSS,但它不起作用。

这里有一些我还没有完全理解的概念,但它可能是完全平庸的。

有什么想法吗?

【问题讨论】:

【参考方案1】:

jQuery/javascript 正在操作 DOM 并在每次双击时动态添加/设置输入字段的宽度。由于内联样式(这里是在 DOM 中动态生成的)优先于所有其他样式,因此您无法使用附加类中的新属性更改动态呈现的内联样式。如果您想摆脱奇怪的跳跃效果,请在 screen.css 文件中删除设置整个表格宽度的属性:

表 边框折叠:折叠; /宽度:940px; ...删除/

在使用固定表格宽度(或者某处可能存在“冲突”的 css)计算将输入字段设置为的宽度时,代码似乎会混淆。当我从表格中删除宽度时,该功能可以正常工作并且看起来还可以。

希望这有帮助,如果没有,请告诉我...

【讨论】:

以上是关于jEditable 输入框 CSS 样式的主要内容,如果未能解决你的问题,请参考以下文章

框左边加一个小图标,css样式应该怎么写

css选中文本输入框,配置其样式

CSS中输入框(搜索框)的实现技巧

CSS禁止Chrome谷歌浏览器激活输入框后自动添加橘黄色边框

css基础 CSS 媒体类型CSS 属性 选择器CSS 表单CSS 计数器

如何css样式angular2的Ng2-completer插件输入框和下拉颜色?