小编Dmi*_*ten的帖子

如何使CSS宽度填充父级?

我确信之前已经问过这个问题,但我似乎无法找到答案.

我有以下标记:

<div id="foo">
    <div id="bar">
        here be dragons
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我的愿望是让foo具有600px(width: 600px;)的宽度并使bar具有以下行为:

padding-left: 2px;
padding-right: 2px;
margin-left: 2px;
margin-right: 2px;
outerWidth: 100%;
Run Code Online (Sandbox Code Playgroud)

换句话说,而不是设置bar的宽度,592px我想设置bar的外部宽度,100%以便计算到592px.这里的重要性是我可以将foo的宽度更改为,800px并且bar将在渲染时进行计算,而不是我必须手动对所有这些实例进行数学运算.

这在纯CSS中是否可行?

更有趣的是:

  • 如果#bar是一张桌子怎么办?
  • 如果#bar是textarea怎么办?
  • 如果#bar是输入怎么办?

  • 如果#foo是表格单元格(td)怎么办?(这会改变问题还是问题相同?)


到目前为止table#bar,input#bar已经讨论过了.我还没有看到textarea#bar的好解决方案.我认为没有边框/边距/填充的textarea div可以使用div样式作为边框textarea.

css

79
推荐指数
4
解决办法
21万
查看次数

使用回车键阻止表单提交

我刚刚写了这个漂亮的小函数,它可以在表单上运行...

$("#form").keypress(function(e) {
    if (e.which == 13) {
        var tagName = e.target.tagName.toLowerCase(); 
        if (tagName !== "textarea") {
            return false;
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

在我的逻辑中,我希望在输入textarea期间接受回车.此外,将输入字段的输入键行为替换为tab到下一个输入字段的行为(就像按下Tab键一样)将是一个额外的好处.有没有人知道使用事件传播模型正确触发相应元素上的回车键的方法,但是阻止表单在其印刷机上提交?

html javascript jquery

56
推荐指数
4
解决办法
9万
查看次数

CSS高度:填充可用空间.没有固定的高度

所以我有以下结构

<div id="container">
  <div id="head"></div>
  <div id="body"></div>
  <div id="foot"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

我只使用ID进行说明,所以这甚至不一定是整页.

我希望我的容器指定固定大小...或相对大小,无关紧要.让我们争论说300px的高度.也overflow: hidden

我希望头/脚扩展以适应其内部的内容,因此height: auto就足够了.

我希望身体扩大以适应头部和脚部之间的剩余空间.如果内容太大,则滚动(overflow: auto).

height: 100%on #body不起作用,因为它像父母一样获得300px的高度并将其自身和页脚的部分推出父级.

头部和脚部position: absolute不起作用是因为通过将它们从文档流中取出,一些内容#body被隐藏起来.为了解决这个问题,我们可以使用padding-top/bottom但是我们不能设置a padding-top: xxpx/ padding-bottom: xxpxon #body因为我们不知道头/脚的必要高度因此它们为什么height: auto.

编辑:

我尝试了容器/头/体/脚转换成表,其中#bodyheight: 100%.这很有效,除非#body内容变得太大而不会滚动,而是整个表格展开以显示所有内容.这不是理想的行为,因为我需要#body滚动,而不是#content它的父级.

有什么建议?

html css

15
推荐指数
1
解决办法
2万
查看次数

Eclipse自动保存工作区

是否有一个Eclipse插件,它会在后台每隔5分钟自动保存一次eclipse工作区,因为每次eclipse崩溃时整个工作区布局都会恢复或打开文件会丢失,而且此时非常烦人.

eclipse eclipse-plugin

10
推荐指数
1
解决办法
7513
查看次数

离线Amazon S3

所以我想尝试使用Heroku作为我的服务器,但Heroku不允许写入其文件系统.相反,我需要使用数据库和Amazon S3之类的东西来存储上传的图像等内容.

问题是我在开发时经常没有互联网访问权限.或者非常差的互联网接入.因此,为Amazon S3开发是不切实际的.是否有可以使用的离线版本,以便我的本地计算机可以充当S3云,而在测试/生产环境中,我可以使用真正的S3?

amazon-s3

9
推荐指数
2
解决办法
4394
查看次数

JavaScript大量库?

是否有一个javascript库可以准确处理大数字(类似于oracle通过将数字存储为字符串的方式)并允许加/减/乘/除/ mod /等操作?

基本上我需要添加大数字,如1234567890.1234567890 + 1234567890.987654321,并得到一个精确的结果.

javascript

8
推荐指数
1
解决办法
6747
查看次数

(Wicket)在ajax响应期间更改可见性

我有一个AjaxPagingNavigator.基本上在某种情况下,重新加载AjaxPagingNavigator页面的列表.发生这种情况时,我只想在列表包含多个页面时呈现导航器.

所以有人知道我可以在哪里附加处理程序,以便我可以在我的AjaxPagingNavigator中检查可见性条件并启用/禁用可见性,以便在导航器通过时更新.ajax是可见还是不可见?

标记:

<div wicket:id="mainWrap">
    <div wicket:id="navigator"/>
    <div wicket:id="listWrap">
        <div wicket:id="list><!-- here be content --></div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

所以我有一个ajax事件刷新"mainWrap",刷新"导航器"以及"列表"和包装.

这是触发整个事件的事件.

 protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
     List foo = null; // do work to get list
     model.setFound(found); // update the model (thus updating "list")
     target.addComponent(mainWrap);
}
Run Code Online (Sandbox Code Playgroud)

编辑:我知道我可以写

navigator.setVisibility(list.getPageCount() > 1);
Run Code Online (Sandbox Code Playgroud)

在创建导航器之后和更新模型之后,我希望将其封装在AjaxPagingNavigator的子类中.

java wicket

8
推荐指数
1
解决办法
6522
查看次数

Ruby多线程/多处理读数

任何人都可以推荐任何好的多线程/处理书籍/网站,详细介绍Ruby多线程/多处理的复杂性?

我尝试使用ruby线程,基本上在1.9vm上没有死锁的代码,它在jruby中遇到了死锁.是的我意识到差异是巨大的(jruby没有GIL)但是我想知道在ruby中是否存在我需要阅读的多线程编程的策略或类集.

旁注:有点奇怪从java到ruby必须定义我是否想要一个重新进入的锁而不是.

ruby multithreading multiprocessing

6
推荐指数
1
解决办法
1887
查看次数

当javascript触发对话框打开时,如何使IE8/9提交输入类型="文件"

如果我有某个input type="file"地方,并点击某个链接,它也会触发文件输入的点击.用户选择一个文件.

在IE8/9中,如果用户点击button type="submit"第一次单击,则清除文件输入中的所有数据,然后第二次提交空白表单.

如何允许input type="file"javascript点击触发器提交帖子.

一些说明:

  • 由于另一次点击事件,点击被触发.在活动中.
  • 输入类型="文件"未设置为display:none.
  • 没有尝试操纵用户输入

想法?

javascript internet-explorer dom

6
推荐指数
2
解决办法
1万
查看次数

如何在没有更改事件的情况下禁用firefox的表单自动完成?

所以firefox有一个漂亮的机制,当重新加载页面或使用后退按钮时,它将尝试在字段中自动完成值.哪个很棒,除非你有类似下拉菜单的东西,当设置为一个值时,使用ajax修改页面.

发生的事情是浏览器重新加载页面,下拉列表预先填充了记住的值,然后当dom准备就绪时不会触发任何更改事件.因此附加的更改处理程序不会触发,因此页面不会更新.

是否有一种"修复"此行为的好方法,以便它按预期为用户工作:

a)我们确实希望浏览器自动完成,因为这是一种良好的用户体验.

b)仍然希望onchange事件发生.

我现在唯一能想到的就是在文档中添加一个准备就绪的事件,其中javascript预先填充了表单中的初始值,当文档加载时,javascript将检查预先填充的值以及是否不匹配输入中的内容将触发更改处理程序.

谁有更好的解决方案?是否有一个lib已经这样做了?

(使用Rails 2.3.5 + jQuery)

javascript firefox dom

5
推荐指数
1
解决办法
1003
查看次数