- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个带有 <prefwindow>
的 Firefox 附加组件控制我的附加组件的首选项。它包含 2 个独立的 <description>
标签以在某些地方提供更多信息(见下文)。我有一些 JavaScript 在加载对话框时运行以设置 CSS max-height
和 max-width
基于用户屏幕的尺寸(我发现这是必要的,因为否则对话框会水平扩展超过屏幕的边缘,所以 <description>
(具有 CSS word-wrap: break-word
设置 - Forcing a description widget to wrap )适合一行).
但是,当 Firefox(v3.6 和 v4.0)显示 prefwindow 时,在设置 max-width
后,它只将描述视为一行。和 max-height
, 因此即使对话框有垂直扩展的空间,也有一个滚动条(我在最顶部的 vbox 上设置了 overflow: auto
,这样如果没有滚动条,内容就不会被切断)。
基本上,我想要的是 <description>
的内容标签来换行,这样对话框就不会比用户的屏幕长,然后对话框也可以水平调整大小,这样就没有滚动条了。
<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
<prefwindow xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml" style="width: 100%; height: 100%;" sizemode="maximized">
<prefpane>
<script type="application/x-javascript"><![CDATA[
window.addEventListener("DOMContentLoaded", function (event) {
// Initialize size
document.documentElement.style.maxWidth = ((screen.availWidth || screen.width) - 100) + "px";
document.documentElement.style.maxHeight = ((screen.availHeight || screen.height) - 100) + "px";
}, false);
function showExample(n) {
// Not important...
}
]]></script>
<preferences><!-- ... --></preferences>
<!-- Just trying everything with this vbox here... -->
<vbox flex="1" style="overflow: auto; width: 100%; height: 100%;">
<groupbox>
<caption label="Inline Reference Links" />
<description style="word-wrap: break-word;">Inline reference links are the tiny "superscript" numbers that appear inside [special name here] and link to a reference at the bottom. <button oncommand="showExample(1)" label="Show Example" style="vertical-align: middle;" /></description>
<radiogroup preference="pref_mode">
<radio value="0" label="Show all inline reference links by default" />
<radio value="1" label="Hide all inline reference links by default" />
<radio value="2" label="Only show inline reference links when hovering over containing paragraph" />
</radiogroup>
<hbox>
<checkbox preference="pref_hideOtherTags" label="Hide other bracketed tags" />
<button oncommand="showExample(2)" label="Show Example" style="vertical-align: middle;" />
</hbox>
<checkbox preference="pref_useVisibility" label="Make inline reference links invisible instead of removing them*" />
<description style="word-wrap: break-word; height: auto;">*When the inline reference links are invisible, they cannot be seen, but they still take up space on the page. When we are set to show inline reference links when hovering over the containing paragraph, this option can be useful to prevent shifting when the reference links are shown.</description>
</groupbox>
</vbox>
</prefpane>
</prefwindow>
这是 prefwindow 的屏幕截图:http://i.stack.imgur.com/L3JOm.png
最佳答案
当涉及溢出时,大小约束不会正确传播。不幸的是,prefwindow 和 prefpane 元素都包含溢出,因此描述总是要求一行的高度,直到后来它才发现它需要更多的高度。
可能的解决方法是移除 vbox 上的溢出,然后将 vbox 的高度显式设置为其内容高度。您需要在设置最大宽度后执行此操作,以便第一次调用 sizeToContent 时获得正确的宽度;第二个将获得正确的高度。
sizeToContent();
var vbox = document.getElementById('vbox');
vbox.height = vbox.boxObject.height;
sizeToContent();
...
<vbox id="vbox" flex="1">
关于firefox-addon - XUL prefwindow 大小问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5762023/
我正在开发一个 Firefox 插件,我假装我的插件能够在桌面和移动设备上运行。我认为或多或少所有东西都与这两种环境兼容,但是我想根据当前设备是移动设备还是桌面设备来运行一些代码,所以问题是是否有类似
我正在开发一个 Firefox 插件,我不确定的一件事是如何在用户卸载插件时删除与我的插件相关的用户首选项。首选项被设置,如果用户卸载并重新安装首选项仍然存在。一些设置还与第一次安装有关,因此如果用户
使用 SDK 制作对话框的正确方法是什么(它没有锚定到附加栏等,而是显示在屏幕中央)?这个重要功能似乎没有任何 API。我确实看到 windows/utils 有 open 但我有两个问题: 打开对话
我遵循了几个教程但没有成功。我认为这是经典的例子,但我无法让它发挥作用。我可以保存我的项目,安装插件,当我选择一些文本时我可以看到上下文菜单项“日志选择”,但是当我点击它时没有任何反应。 export
我刚刚制作了一个 FF 插件并制作了一个简单的网站。我希望访问者点击“下载”按钮安装插件,而不是下载。它在本地有效,但在我上传网站时无效。我检查了 mozilla 存储库,它们也只是链接到 xpi 文
构建传统的 Firefox 扩展,您将在 install.rdf 中设置 minVersion 字段。由于这是由 package.json 和 cfx 抽象出来的,有没有办法设置 minVersion
请告诉我如何在 odoo9 中将文件夹(例如:custom_module)添加到“./odoo.py --addons=./addons” 我正在尝试将 custom_module 添加到“”./od
我用 simple-prefs配置插件设置的模块。我怎么能以编程方式 打开插件的设置页面? 最佳答案 我们在 test add-on here 中执行此操作 那里的代码比您需要的要多,因此较短的版本是
我有一个带有工作回调构造的插件: 库/main.js: function myLogin(loginname,loginfield) { var pageUrl = tabs.activeTa
为了在我的服务器上为我的插件提供自动更新,我需要创建一个 update.rdf文件。 我如何生成这样的文件? 文档非常多:https://developer.mozilla.org/en-US/doc
我在此链接中阅读了有关“请求”功能的信息: https://addons.mozilla.org/en-US/developers/docs/sdk/1.1/packages/addon-kit/do
我正在尝试使用 nsIHttpChannel 使用 firefox 插件 sdk 读取 header 喜欢.. var httpChannel = subject.QueryInterface(Ci.
有没有办法在内容脚本中访问 Fire Fox addon sdk 中的 Html5 文件 api? 这是为了存储用户添加的单词及其含义所必需的。数据可能会变大,因此本地存储不是一种选择。 windo
两者有什么区别: import React from 'react/addons'; let {PropTypes} = React; 对比 import React, { PropTypes } f
tl;dr:我们使用 Addon SDK 创建了一个 firefox 插件。由于编译插件是更大的构建系统中的一个步骤(我们也为 chrome 编译),我们的构建系统手动打包 xpi 并且不使用 jpm
我是 Windows 7 64 位用户,我在更新最新版本的 Android Studio 和 SDK 后遇到了 Android Studio 问题组件.. The following SDK comp
我正在研究一个Firefox扩展。问题是,如果我进行了任何更改,我需要关闭然后重新打开firefox浏览器以查看更改。我可以通过刷新页面来查看那些更改吗? 最佳答案 您可能想尝试Restart Fir
似乎是您从属性 title="test" 获得的工具提示不显示在面板内。 也用 stackoverflow loaded in the panel 测试过, 将鼠标悬停在热门、周、月上时没有工具提示。
截至 2019 年 6 月 27 日,所有语言词典的下载量约为 1,800 次。我已从该页面查看了一些示例仪表板... https://addons.mozilla.org/en-US/firefox
我正在尝试通过 msi 安装程序静默安装 firefox xpi。我是通过以下方法这样做的: 解压我的 xpi在某个临时目录中并将其中的所有内容复制到 %APPDATA%\Mozilla\Firefo
我是一名优秀的程序员,十分优秀!