HTML“按钮”应该和其他所有的盒子模型一样吗?(Should HTML “buttons” have the same box-model as everything else?)
使用
button
type
引用了button
元素和input
元素,我遇到了一个我认为是bug的行为(在Firefox和Chrome的最新版本中)。 但鉴于表格元素通常是我认为是w3规则的例外,我认为在假设我是对的之前我会要求验证。行为是这样的:在标准模式中,当我向这样的元素添加边框时,边框出现在元素的宽度内。 如果我手动将
box-sizing
设置为content-box
(使用供应商前缀),则行为符合我的预期,但是当将box-sizing
保留为默认值时, 它不是content-box
。 这是一个jsfiddle例子 。 如果你不想去jsfiddle,这里是源代码:<!doctype html> <html> <head> <title>Broken box model?</title> <style> body { padding: 30px; background: brown; } div { position: relative; } input { background-color: #CCC; font-family: Helvetica, Verdana, sans-serif; /* Yes, I know Helvetica and Verdana are dissimilar. I don't care. Arial sucks. */ font-size: 18px; font-weight: bold; color: white; text-transform: uppercase; border: 0; width: 150px; height: 90px; margin: 4px; } input:hover { margin: 0; border: 4px solid white; } input:active { margin: 0; border: 4px solid white; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; } </style> </head> <body> <div> <input type="button" value="I am a button" /> </div> </body> </html>
这是正确的行为,还是我偶然发现了一个错误?
Referring to both the
button
element and theinput
element with atype
ofbutton
, I ran across a behavior I think is a bug (in recent releases of both Firefox and Chrome). But given how form elements are often exceptions to what I think are w3 rules, I thought I would ask for verification before assuming I am right.The behavior is this: In standards-mode when I add a border to such an element, the border appears inside the width of the element. If I manually set the
box-sizing
tocontent-box
(using vendor prefixes), the behavior does what I expect, but when thebox-sizing
is left as its default it is notcontent-box
. Here's a jsfiddle example. If you don't want to go to jsfiddle, here's the source code:<!doctype html> <html> <head> <title>Broken box model?</title> <style> body { padding: 30px; background: brown; } div { position: relative; } input { background-color: #CCC; font-family: Helvetica, Verdana, sans-serif; /* Yes, I know Helvetica and Verdana are dissimilar. I don't care. Arial sucks. */ font-size: 18px; font-weight: bold; color: white; text-transform: uppercase; border: 0; width: 150px; height: 90px; margin: 4px; } input:hover { margin: 0; border: 4px solid white; } input:active { margin: 0; border: 4px solid white; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; } </style> </head> <body> <div> <input type="button" value="I am a button" /> </div> </body> </html>
Is this correct behavior, or have I stumbled on a bug?
原文:https://stackoverflow.com/questions/8334766
最满意答案
哇,所以我是个白痴。 Appengine将Text存储为对象,这就是无法在Cloud Console中查看的原因。 如果我试图实际下载主题,我会看到有一个与我上传的内容相匹配的项目的值。
浪费多个小时的方式:(
Wow, so I'm an idiot. Appengine stores Text as an object and that's why it can't be viewed in Cloud Console. If I had tried to actually download the theme I would have seen there was a value for items that matched what I uploaded.
Way to waste multiple hours :(
相关问答
更多-
setMethod(new Text(longStringValue)); String value = text.getValue(); 如果您尝试将现有的字符串列更新为文本,那么我不确定是否支持该字段。 您可以尝试将字符串类型从字符串更改为文本,并查看它是否仍然加载(我可以想象这可能会起作用,请让我们知道它是否可以)。 如果没有,您需要添加一个新列,并让您的应用程序适当地合并它们。 setMethod(new Text(longStringValue)); String value = text. ...
-
Text对象的构造函数接受String 。 所以你应该写: public void doGet(HttpServletRequest req, HttpServletResponse res){ try { String action = req.getParameter(Constants.ACTION); if(action.equals("add")){ Text description = new Text(req.getParameter("description" ...
-
我用GcsService解决了我的问题: protected String uploadBytesForCsv(Map
> rows) throws IOException { LOGGER.info("Get Bytes For Csv"); final Collection lines = cellsToCsv(rows); LOGGER.info("number line : " + lines.siz ... -
在Google App-Engine JAVA中将文本转换为字符串,反之亦然(Converting Text to String and vise-versa in Google App-Engine JAVA)[2022-02-02]
检查关于Text类的Javadoc 。 它有两个方法: toString()和getValue() 。 但toString()只返回前70个字符。 所以,使用getValue()来代替: String value = someText.getValue(); Text类的构造函数支持使用字符串值进行初始化。 (正如Javadoc所说),这个对象在施工后不能修改。 Check Javadoc about Text class. It has two methods: toString() and getVa ... -
我对Google AppEngine没有多少经验,但我的理解是它与Django关系非常密切。 您的模板实际上并不包含Python代码,即使您在其中使用的某些结构看起来像它。 你的两个问题都应该使用模板过滤器来解决。 如果是Django,我会用第二个问题来解决这个问题: {{ item.description|truncatewords:10 }} 对于你的第一个问题(字符串替换),可能没有内置的过滤器,你可以使用它。 你将需要编写自己的。 像这样的东西; from google.appengine.ext ...
-
difflib包可用于生成差异。 它是用纯Python编写的,它在标准的Python库中,所以我期望它可以在Google App Engine中使用。 The difflib package can be useful for generating diffs. It's written in pure Python and it's in the standard Python library, so I'd expect it to be available in Google App Engine.
-
我推荐以下方法,特别是如果代码在生产中: 在您的实体中引入新的文本字段。 编写一个简单的迁移代码来遍历每个实体,然后从String属性中读取现有值并将其放入新的Text属性中。 修改当前代码以仅从新Text属性进行写入和读取。 上面的方法将帮助你逐步做事,在出现问题的最坏情况下,至少你有旧的属性和旧的值。 I recommend the following approach, especially if the code is in production: Introduce a new Text fiel ...
-
是。 Google的应用引擎是面向消费者的前端,用于谷歌内部使用的相同服务器资源。 没有一款主要的面向世界的谷歌产品直接通过API使用应用引擎,但谷歌为谷歌构建的许多内部工具都使用它,包括放在公共场合的所有限制。 Yes. Google's app engine is a consumer-facing front-end for the same server resources that google uses internally. None of the major world-facing goo ...
-
哇,所以我是个白痴。 Appengine将Text存储为对象,这就是无法在Cloud Console中查看的原因。 如果我试图实际下载主题,我会看到有一个与我上传的内容相匹配的项目的值。 浪费多个小时的方式:( Wow, so I'm an idiot. Appengine stores Text as an object and that's why it can't be viewed in Cloud Console. If I had tried to actually download the t ...
-
如何使用com.google.appengine.api.datastore.Text(how to use com.google.appengine.api.datastore.Text)[2022-07-01]
这会有用吗?相关文章
更多- css盒子模型
- HTML5+Springmvc实现拖拽文件上传
- HTML5项目笔记1:项目准备和工具使用
- HTML5项目笔记4:使用Audio API设计绚丽的HTML5音乐播放器
- Cocos-html5 初识
- nodejs与html代码分离
- HTML5项目笔记9:HTML5 Canvas 的图表报表开发
- HTML转义标签
- HTML 排版标记
- 在HTML中使用javascript
最新问答
更多- h2元素推动其他h2和div。(h2 element pushing other h2 and div down. two divs, two headers, and they're wrapped within a parent div)
- 创建一个功能(Create a function)
- 我投了份简历,是电脑编程方面的学徒,面试时说要培训三个月,前面
- PDO语句不显示获取的结果(PDOstatement not displaying fetched results)
- Qt冻结循环的原因?(Qt freezing cause of the loop?)
- TableView重复youtube-api结果(TableView Repeating youtube-api result)
- 如何使用自由职业者帐户登录我的php网站?(How can I login into my php website using freelancer account? [closed])
- SQL Server 2014版本支持的最大数据库数(Maximum number of databases supported by SQL Server 2014 editions)
- 我如何获得DynamicJasper 3.1.2(或更高版本)的Maven仓库?(How do I get the maven repository for DynamicJasper 3.1.2 (or higher)?)
- 以编程方式创建UITableView(Creating a UITableView Programmatically)
- 如何打破按钮上的生命周期循环(How to break do-while loop on button)
- C#使用EF访问MVC上的部分类的自定义属性(C# access custom attributes of a partial class on MVC with EF)
- 如何获得facebook app的publish_stream权限?(How to get publish_stream permissions for facebook app?)
- 如何防止调用冗余函数的postgres视图(how to prevent postgres views calling redundant functions)
- Sql Server在欧洲获取当前日期时间(Sql Server get current date time in Europe)
- 设置kotlin扩展名(Setting a kotlin extension)
- 如何并排放置两个元件?(How to position two elements side by side?)
- 如何在vim中启用python3?(How to enable python3 in vim?)
- 在MySQL和/或多列中使用多个表用于Rails应用程序(Using multiple tables in MySQL and/or multiple columns for a Rails application)
- 如何隐藏谷歌地图上的登录按钮?(How to hide the Sign in button from Google maps?)
- Mysql左连接旋转90°表(Mysql Left join rotate 90° table)
- dedecms如何安装?
- 在哪儿学计算机最好?
- 学php哪个的书 最好,本人菜鸟
- 触摸时不要突出显示表格视图行(Do not highlight table view row when touched)
- 如何覆盖错误堆栈getter(How to override Error stack getter)
- 带有ImageMagick和许多图像的GIF动画(GIF animation with ImageMagick and many images)
- USSD INTERFACE - > java web应用程序通信(USSD INTERFACE -> java web app communication)
- 电脑高中毕业学习去哪里培训
- 正则表达式验证SMTP响应(Regex to validate SMTP Responses)