有关于此的问题和文章,但据我所知,没有任何结论.我能找到的最好的总结是
flex-basis允许您在计算任何其他内容之前指定元素的初始/起始大小.它可以是百分比或绝对值.
...这本身并没有说明基于柔性基组的元素的行为.根据我目前对flexbox的了解,我不明白为什么它也无法描述宽度.
我想知道flex-basis与实际宽度的不同之处:
编辑/澄清:这个问题已经以不同的格式询问了什么是flex-basis属性集?但我觉得更直接的比较或总结柔性基础和宽度(或高度)的差异将是不错的.
假设我想从脚本标签内打印html.
像这样的来源
<div>foo</div>
<script>
print('<div>Print this after the script tag</div>');
</script>
<div>bar</div>
Run Code Online (Sandbox Code Playgroud)
在脚本运行后,应该在浏览器中看起来像这样
<div>foo</div>
<script>
print('<div>Print this after the script tag</div>');
</script>
<div>Print this after the script tag</div>
<div>bar</div>
Run Code Online (Sandbox Code Playgroud)
我可以为此目的编写我自己的代码但是因为这对我来说就像一个非常简单的问题,我猜我要么错过了某些东西,要么我的想法在某种程度上存在缺陷而且故意排除了打印.
另外,有点相关:我想知道脚本是否(或可以制作)知道它周围的脚本标签.通过这些信息,可以更容易地找到要注入的打印html代码的位置,假设它不是非常气馁.
澄清:我不需要你为我写一个打印功能.我只需要知道是否存在实现此目的的本机方法,我已经错过了它或者不应该这样做的原因.
编辑 我意识到我没有想到这个问题.
我直截了当地了解了事实,现在几乎所有事情似乎都在起作用.我应该最初提到模板内部需要打印功能 - 我正在进行模板引擎实验.我设法通过从简单的html中分离脚本并将分离的html sans脚本与脚本输出连接来解决这个问题.
当我编写代码时,我注意到由于js的异步性,一切都不会那么顺利.我想我希望能够在模板中做任何类型的js魔术,就像我在php中一样.似乎实际上在模板内部以傻瓜式方式支持异步代码需要更多的思考.
编辑:正确的术语似乎是byline,而不是sub-heading.我将保留其他未经修改的帖子.转换成你的头:)
什么是最符合语义的子标题方法?以下示例.
Lorem ipsum ......
由于与实际的信息标题相比,副标题的内容并不重要,我认为它们不应被屏幕阅读器和搜索引擎视为单独的标题.
所以,我想到的选项如下:
<h2>About</h2><h3>We sell apples, yay!</h3> - >这是我想避免的.<h2>About</h2><span class="subheading">We sell apples, yay!</span> - >作品.这是最好的方式吗?不知道.<h2>About<span class="subheading">We sell apples, yay!</span></h2> - >标题的一部分.我真的不知道这是好事还是坏事.对此有何建议?
如果我将术语子标题错误(我可能已经做过):) 请纠正我:)
我是js模板引擎的新手.把手似乎是最受欢迎的选择.我不喜欢做条件,循环等的语法,但因为我完全有能力并且感觉更舒服使用普通的旧js而且我不打算让任何不懂js的人触摸我的模板,我在问Handlebars是否支持这个.
当然,最受欢迎的选择并不总是最好的.我更像是一个Mootools家伙,jQuery让我疯狂(伟大的图书馆,不适合我).因此,如果Handlebars是jQuery的模板引擎,Mootools会是什么?
我想这个问题的简单答案就是一个组成部分.
虽然我同意,但我觉得很奇怪必须为一些特定的东西编写一个组件.
例如,假设我有一个用户表.创建用户时,它应该形成事件的连锁反应,在数据库周围启动与用户相关的不同类型的数据.我认为最好避免直接从不同的控制器操作数据库,而是将所有这些整齐地打包在方法中.然而,由于某些逻辑需要单独加入,我真的不能在一个方法中使用整个包.相反,我认为这将是合乎逻辑的打破它以更小的部分(如$userModelOrController->createNew()和$candyStorageModelOrController->createNew()),只有各自的数据库表进行交互.
现在,如果逻辑被放到模型中,它将很有效,直到我需要使用其他模型.当然这是可能的,但与控制器中加载模型相比,它并不那么简单.它就像一个Cake开发人员告诉我"当然,如果你想这样做就可能,但这不是我会怎么做".
然后,如果逻辑被放到控制器上,我可以很容易地访问其他模型$this->loadModel(),但这让我回到之前解释的情况,因为我需要能够无限期地继续连锁反应.从控制器访问其他控制器是可能的,但似乎没有任何直接的方法这样做,所以我猜我仍然没有做对.
通过使用组件,可以轻松解决此问题,因为组件可用于我想要的每个控制器.但就像我在开头写的那样,为这一项任务专门创建一个组件感觉很尴尬.对我来说,组件看起来更像是额外功能的包(如核心组件),而不是共享控制器特定逻辑的东西.
由于我是新手MVC的新手,我可能完全误解了这个概念.如果有人指出我正确的方向,我会再次感激:)
据我了解,flexbox css属性的顺序是绝对的,即flex容器中的最后一个元素具有order: 0顶部。
我希望能够在flex容器中提升某些元素,以使它们不会上升到确切的位置,而是通过许多元素来提升位置,例如将元素移到上一个元素之上。
澄清:
<div>A</div>
<div>B</div>
<div>C</div>
<div style="order: -1">This should go up by one, between B and C</div>
Run Code Online (Sandbox Code Playgroud)
这种风格当然会将最后一个元素移到顶部,而不是我想要的位置。
有没有办法用CSS做到这一点?
显然我在问不可能的事。由于在某个时候可能需要这种排序方式,因此我只需要在javascript中建立一个排序系统即可即时更改子级的排序属性。我已经弄清楚了,但现在还不够清楚,无法用言语表达。
我想值得一提的是,这是用于布局编辑器的,它将导出纯HTML和CSS。Javascript将仅在编辑器中使用,而不在已发布的站点中使用。否则,仅需对实际元素进行重新排序就足够了,但是在某些时候,某些元素需要针对不同的设备进行优先级排序。
我最终将使用我想出的方法来回答这个问题,但是与此同时,您可以随意添加自己的建议并抓住要接受的答案的要点:)
我需要在组件和帮助器之间共享数据.我正在将我自己的支付服务formdata生成器转换为CakePHP插件,我希望能够从控制器(使用组件)填写支付数据并使用帮助程序打印出数据.
到目前为止我尝试过的所有东西都觉得有点过于讨厌,所以让我问你:有没有优雅的方法将数据从组件传递给帮助器?
编辑:
我通过在组件初始化期间将原始的formadata类实例添加到ClassRegistry来解决了这种特殊情况.这样,帮助程序也可以使用ClassRegistry访问实例.
但是,这仅适用于对象,因此问题仍然存在.
是否有任何干净的方式来加载除js扩展名以外的文件而不是AMD内容?
我使用enforceDefine配置来确保我的实际AMD代码在开发时工作.
到目前为止,我已经设法组建了一个将enforceDefine设置为false 的插件,因此我可以加载第三方库:require(['noamd!handlebars']).这对我来说似乎不太讨厌,但我想知道是否有更好的方法.
我正在测试noext插件,它可以完成它的工作,但也是一种hacky方式.我注意到它将noext参数两次应用于url(test.txt?noext=1&noext=1).我可以忍受,但最佳的我想摆脱所有额外的参数.可以这样做吗?
有没有办法在CakePHP(2.*)中访问mvc外的当前控制器或请求对象?
基本上我需要在为CakePHP设计的库中访问请求对象,但是应该尽可能地自己运行 - 换句话说,我想避免控制器本身中任何不必要的特定于lib的初始化代码来保持.
我已经为此目的编写了一个组件,但并非所有对lib的调用都将直接来自控制器.我还想避免在$ lib内部的任何地方传递$ controller或$ request变量.
我从来没有仔细研究CakePHP类的加载,但是当CakePHP 1.3是新的时候,我可以回忆一下关于ClassRegistry的东西.在控制器操作中测试ClassRegistry后不久,我发现它是空的(直接从类中使用ClassRegistry :: keys()和pr()确定)
那么,是否有任何友好的方式来获取请求对象或我应该采用更丑陋的方法?
cakephp ×3
css ×2
flexbox ×2
javascript ×2
cakephp-2.0 ×1
components ×1
controller ×1
css3 ×1
echo ×1
helper ×1
html ×1
js-amd ×1
model ×1
requirejs ×1
semantics ×1