是否可以让两个元素共享相同的内容:
----------
| Line 1 |
| Line 2 |
| Line 3 |
----------
[SOME OTHETR STUFF HERE]
----------
| Line 4 |
| Line 5 |
| Line 6 |
----------
或者更复杂的例子,使用css3 columns
------------------- --------- --------------------------------
| Line 1 | Line 4 | OTHER | Line 7 | Line 10 |
| Line 2 | Line 5 | STUFF | Line 8 | Line 11 |
| Line 3 | Line 6 | HERE | Line 9 | Line 12 |
------------------- --------- --------------------------------
希望这是有道理的?
还可以设置不同的 div,具有不同的宽度、高度、列和样式。
感谢您的反馈。
尝试详细说明:
如果您知道像 inDesign 这样的程序,您可以在其中创建两个文本字段并将它们链接在一起,以便文本从第一个文本字段延续到下一个文本字段。同样,您可以将另一个链接到集合,如果文本足够长,它将从文本字段开始到第二个,最后结束:
这些盒子可以放置在屏幕各处,它们唯一的共同点就是它们共享相同的内容。
Box 1
------------------------------
Lorem ipsum dolor sit amet,
consectetur adipiscing elit.
Proin rutrum ligula nec quam
molestie sed rutrum justo
------------------------------
Box 2
------------------------------
auctor. Quisque pulvinar diam
nisl. Curabitur porttitor
vehicula dui. Sed tempus
venenatis est, non egestas
------------------------------
Box 3
------------------------------
urna consequat a. Morbi diam
mi, fermentum non lobortis
eget, rhoncus id arcu.
------------------------------
最佳答案
Here's a solution根据您的 original 处理高度不是行高的倍数和宽度不同的情况.
jQuery(function($) {
var content = $(".c1").html(),
$elems = $("div").empty(),
lineHeight = 20,
offset = 0,
wholeThing = $("<div />"),
maxWidth = 0;
$elems.each(function() { maxWidth = Math.max(maxWidth, $(this).width()); });
$elems.each(function() {
var thisWidth = $(this).width(),
thisHeight = $(this).height(),
floatHeight = (thisHeight / lineHeight | 0) * lineHeight;
wholeThing.append($("<div />").css({
width: maxWidth - thisWidth,
height: floatHeight,
clear: "right",
float: "right"}));
if (thisHeight % lineHeight) {
wholeThing.append($("<div />").css({
width: maxWidth,
height: thisHeight - floatHeight,
clear: "right",
float: "right"}));
});
}
wholeThing.css("width", maxWidth).append(content);
$elems.each(function() {
var $content = wholeThing.clone().appendTo(this);
$content.css({
position: "absolute",
left: 0,
top: -offset
});
offset += $(this).height();
});
});
这与您采用的方法相同,但更进了一步。您使用全文创建了 div,将它们定位在目标 div 中,向上移动了“链”中所有先前容器的组合高度。
我添加的是这样的:
内容 div(称为 wholeThing,最终相乘并添加到每个容器的内容)的宽度设置为最高 所有容器的宽度。
在 wholeThing 的右侧,我们放置了 floated divs 以确保文本根据适用宽度。在示例中,第一个容器的宽度为 200 像素,最大宽度(因此 wholeThing 的宽度)为 300px。因此,我们在右边缘放置一个宽度为 100 像素且高度与第一个容器(向下舍入为行高的完整倍数)相同的 floated div。这解决了“不同宽度”的问题。
之后,假设 div 的高度不是行高的倍数,我们添加一个额外的全 Angular float 以确保我们没有半行在底部,解决行高问题。
由于this bug,“四舍五入为行高的倍数”仅适用于某些 webkit 浏览器。 .这似乎已在 Chrome 中修复,但我仍然在其他浏览器中看到它(特别是 Safari 5 和 Android 浏览器)。
如果这个问题不存在,您可以改为使宽度受限的 div 具有容器的整个高度(而不是向下舍入),并使整个宽度的 div 的高度始终为 1(并在增加 offset 时考虑该额外像素)。这将具有非常棒的优势,即您不需要具有固定的行高。 Here's an example – 它适用于 Chrome、Firefox、Opera 和 IE9+,但不适用于上述 webkit 浏览器。它似乎也适用于 IE8,尽管我还没有完全弄清楚为什么,因为我的第一个版本(适用于 Safari 的版本)在 IE8 中出现问题。老实说,我在这里并没有在 IE8 上花太多时间。
因此顶级版本应该可以在 IE9+ 以及所有其他浏览器中工作,或多或少。
就列而言,我没有看到这种情况发生(除了基本上用 div 重建列)。
关于javascript - 将多个元素链接在一起,使它们共享相同的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15268361/
Rails2.3可以选择随时使用RouteSet#add_configuration_file添加更多路由。是否可以在Rails3项目中做同样的事情? 最佳答案 在config/application.rb中:config.paths.config.routes在Rails3.2(也可能是Rails3.1)中,使用:config.paths["config/routes"] 关于ruby-on-rails-Rails3中的多个路由文件,我们在StackOverflow上找到一个类似的问题
我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t
我有多个ActiveRecord子类Item的实例数组,我需要根据最早的事件循环打印。在这种情况下,我需要打印付款和维护日期,如下所示:ItemAmaintenancerequiredin5daysItemBpaymentrequiredin6daysItemApaymentrequiredin7daysItemBmaintenancerequiredin8days我目前有两个查询,用于查找maintenance和payment项目(非排他性查询),并输出如下内容:paymentrequiredin...maintenancerequiredin...有什么方法可以改善上述(丑陋的)代
我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%
我需要读入一个包含数字列表的文件。此代码读取文件并将其放入二维数组中。现在我需要获取数组中所有数字的平均值,但我需要将数组的内容更改为int。有什么想法可以将to_i方法放在哪里吗?ClassTerraindefinitializefile_name@input=IO.readlines(file_name)#readinfile@size=@input[0].to_i@land=[@size]x=1whilex 最佳答案 只需将数组映射为整数:@land边注如果你想得到一条线的平均值,你可以这样做:values=@input[x]
我需要从一个View访问多个模型。以前,我的links_controller仅用于提供以不同方式排序的链接资源。现在我想包括一个部分(我假设)显示按分数排序的顶级用户(@users=User.all.sort_by(&:score))我知道我可以将此代码插入每个链接操作并从View访问它,但这似乎不是“ruby方式”,我将需要在不久的将来访问更多模型。这可能会变得很脏,是否有针对这种情况的任何技术?注意事项:我认为我的应用程序正朝着单一格式和动态页面内容的方向发展,本质上是一个典型的网络应用程序。我知道before_filter但考虑到我希望应用程序进入的方向,这似乎很麻烦。最终从任何
我正在编写一个gem,我必须在其中fork两个启动两个webrick服务器的进程。我想通过基类的类方法启动这个服务器,因为应该只有这两个服务器在运行,而不是多个。在运行时,我想调用这两个服务器上的一些方法来更改变量。我的问题是,我无法通过基类的类方法访问fork的实例变量。此外,我不能在我的基类中使用线程,因为在幕后我正在使用另一个不是线程安全的库。所以我必须将每个服务器派生到它自己的进程。我用类变量试过了,比如@@server。但是当我试图通过基类访问这个变量时,它是nil。我读到在Ruby中不可能在分支之间共享类变量,对吗?那么,还有其他解决办法吗?我考虑过使用单例,但我不确定这是
我有一个具有一些属性的模型:attr1、attr2和attr3。我需要在不执行回调和验证的情况下更新此属性。我找到了update_column方法,但我想同时更新三个属性。我需要这样的东西:update_columns({attr1:val1,attr2:val2,attr3:val3})代替update_column(attr1,val1)update_column(attr2,val2)update_column(attr3,val3) 最佳答案 您可以使用update_columns(attr1:val1,attr2:val2
我正在尝试修改当前依赖于定义为activeresource的gem:s.add_dependency"activeresource","~>3.0"为了让gem与Rails4一起工作,我需要扩展依赖关系以与activeresource的版本3或4一起工作。我不想简单地添加以下内容,因为它可能会在以后引起问题:s.add_dependency"activeresource",">=3.0"有没有办法指定可接受版本的列表?~>3.0还是~>4.0? 最佳答案 根据thedocumentation,如果你想要3到4之间的所有版本,你可以这
我是一个Rails初学者,但我想从我的RailsView(html.haml文件)中查看Ruby变量的内容。我试图在ruby中打印出变量(认为它会在终端中出现),但没有得到任何结果。有什么建议吗?我知道Rails调试器,但更喜欢使用inspect来打印我的变量。 最佳答案 您可以在View中使用puts方法将信息输出到服务器控制台。您应该能够在View中的任何位置使用Haml执行以下操作:-puts@my_variable.inspect 关于ruby-on-rails-如何在我的R