问题列表 - 第9736页

用显示输入:块不是一个块,为什么不呢?

为什么display:block;width:auto;我的文本输入不像div那样填充容器宽度?

我的印象是div只是一个具有自动宽度的块元素.在下面的代码中,div和输入不应该有相同的尺寸吗?

如何获得填充宽度的输入?100%宽度不起作用,因为输入具有填充和边框(导致最终宽度为1像素+5像素+ 100%+ 5像素+ 1像素).固定宽度不是一个选项,我正在寻找更灵活的东西.

我更喜欢直接回答变通方法.这似乎是一个CSS怪癖,理解它可能会有用.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <title>width:auto</title>

        <style>
        div, input {
            border: 1px solid red;
            height: 5px;
            padding: 5px;
        }
        input, form {
            display: block;
            width: auto;
        }
        </style>
    </head>

    <body>
        <div></div>
        <form>
            <input type="text" name="foo" />
        </form>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我应该指出我已经可以使用包装器解决方法做到这一点.除了与页面语义和CSS选择器关系的这种联系之外,我试图理解问题的本质以及是否可以通过改变INPUT本身的性质来克服它.

好的,这很奇怪!我发现解决方案是简单地添加max-width:100%到输入width:100%;padding:5px;.然而,这引发了更多问题(我将在另一个问题中提出),但似乎宽度使用普通的CSS框模型,max-width使用Internet Explorer边框模型.真奇怪.

好吧,最后一个似乎是Firefox 3中的一个错误.Internet Explorer 8和Safari 4将最大宽度限制为100%+填充+边框,这是规范所要做的.最后,Internet Explorer做对了.

天啊,这真棒!在玩这个游戏的过程中,在尊敬的大师Dean EdwardsErik Arvidsson的帮助下,我设法将三个独立的解决方案拼凑在一起,在具有任意填充和边框的元素上实现真正的跨浏览器100%宽度.见下面的答案.此解决方案不需要任何额外的HTML标记,只需要一个类(或选择器)和旧版Internet Explorer的可选行为.

html css

150
推荐指数
3
解决办法
7万
查看次数

在转发到JSP时,如何检测Java Servlet中的URL?

我有一个看起来像这样的servlet:

public class ExampleServlet extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.getWriter().println(request.getPathInfo());
    }
}
Run Code Online (Sandbox Code Playgroud)

使用web.xml映射,如:

<servlet>
    <servlet-name>example</servlet-name>
    <servlet-class>com.example.ExampleServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>example</servlet-name>
    <url-pattern>/example/*</url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)

它给了我我期望的结果......如果我去http:// localhost:8080/example/foo它打印"/ foo".但是,如果我将servlet更改为转发到JSP文件:

public class ExampleServlet extends HttpServlet {
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // do something here to check the value of request.getPathInfo()
        request.getRequestDispatcher("whatever.jsp").forward(request, response);
    }
}
Run Code Online (Sandbox Code Playgroud)

然后当我检查getPathInfo()的值时,它现在报告"whatever.jsp"而不是"foo".

  1. 为什么在将其转发到JSP之前已经改变了?
  2. 如何检测用户正在寻找的URL?

编辑:以防万一,这是在谷歌应用引擎上.不要以为应该这样.

java jsp servlets

3
推荐指数
1
解决办法
9830
查看次数

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

gprof报告没有时间积累

我正在尝试在运行OSX 10.5.7的计算机上使用gprof配置C++应用程序.我以通常的方式使用g ++编译,但是使用-pg标志,运行应用程序并尝试使用gprof查看调用图.

不幸的是,我的调用图包含所有时间列的全零."被调用"列中的值具有合理的值,因此看起来有些内容被分析但我对其他数据的缺乏感到困惑.

我的所有源文件都以类似的方式编译:

g++ -pg -O2 -DNDEBUG -I./ -ansi -c -o  ScenarioLoader.o ScenarioLoader.cpp
Run Code Online (Sandbox Code Playgroud)

然后我运行'ar'将所有目标文件捆绑到一个库中.后来,我链接并运行gprof如下:

g++ -pg -lm  -o vrpalone vrpalone.o ../src/atomicprof.a lastbuild.o
./vrpalone
gprof gmon.out | less
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

c++ unix macos gprof

24
推荐指数
4
解决办法
2万
查看次数

ColdFusion:有没有人使用WDDX?

我正在开发一个ColdFusion站点,其中数据存储在数据库内的WDDX数据包中,这真的很痛苦.(我不知道为什么这些值不只是存储在另一个表中.)

我之前没有使用过WDDX,我能找到的唯一文档看起来很旧.所以我很好奇是否还有人使用WDDX,如果有的话,为什么?

coldfusion serialization wddx

9
推荐指数
1
解决办法
2770
查看次数

以编程方式将css类添加到ListItem

我需要使用asp.net控件生成此结构,但ListItem不允许添加属性和类.

最好的方法是什么?

<ul>
 <li class="1">SomeText</li>
 <li class="2">SomeText2</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

asp.net webforms listitem

11
推荐指数
1
解决办法
4万
查看次数

如何在C#中将用户定义的表类型作为存储过程参数传递

在SQL Server 2008中,我们可以定义表类型并将其用作存储过程的参数.但是如何在这个SP的C#调用中使用它呢?换句话说,如何使用SQL Server 2008的这一新功能创建表或列表并将其传递到C#代码中的存储过程?

c# sql-server-2008

20
推荐指数
1
解决办法
3万
查看次数

离开公司时记录代码

我昨天辞去了我目前的工作地点,而且我正在自己记录我的项目,所以我可以轻松地将它们交给我.

请记住,我的代码已被评论为一个良好的标准,我还应该把其他什么组合起来帮助我的开发人员接管我的项目?

documentation

16
推荐指数
2
解决办法
614
查看次数

定时Objective-C代码

我想在Objective-C应用程序中添加一些自动化性能测试.(这是一款游戏,因此我想通过简单地运行一组测试来查看引擎关键部分的当前性能.)为此,我想编写一些时序支持例程,如下所示:

- (void) benchmarkSelector: (SEL) msg onObject: (id) target
{
    // run the selector thousands of times, print detailed stats
}
Run Code Online (Sandbox Code Playgroud)

问题是我对毫秒感兴趣,我担心调用performSelector基准测试代码会使结果偏差很多.你会怎么回事?我应该去objc_msgSend吗?

performance benchmarking objective-c

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

在给定两个日期的情况下,如何在几分钟内获得TimeSpan?

为了在给定的两个日期的几分钟内获得TimeSpan,我将执行以下操作

int totalMinutes = 0;
TimeSpan outresult = end.Subtract(start);
totalMinutes = totalMinutes + ((end.Subtract(start).Days) * 24 * 60) + ((end.Subtract(start).Hours) * 60) +(end.Subtract(start).Minutes);
return totalMinutes;
Run Code Online (Sandbox Code Playgroud)

有没有更好的办法?

c#

60
推荐指数
5
解决办法
10万
查看次数