Как я мог бы вынудить плавающий DIV соответствовать высоте другого плавающего DIV?

Нет, JDBC этого не допускает. Можно установить только значения столбцов. Если вы хотите сделать динамические изменения в инструкции sql, вам придется это сделать, прежде чем создавать PreparedStatement.

67
задан Shog9 8 February 2009 в 20:30
поделиться

6 ответов

Перенесите их в содержание отделения с цветом фона, относился к нему, и имейте очищающееся отделение после 'столбцов'.

<div style="background-color: yellow;">
  <div style="float: left;width: 65%;">column a</div>
  <div style="float: right;width: 35%;">column b</div>
  <div style="clear: both;"></div>
</div>
<час>

Обновленный для обращения к некоторым комментариям и моим собственным мыслям:

Этот метод работает, потому что по существу упрощение Вашей проблемы, в этом несколько 'oldskool' метод я вставил два столбца, сопровождаемые пустым элементом очистки, задание очищающегося элемента состоит в том, чтобы сказать родителя (с фоном), что это - то, где плавающее поведение заканчивается, это позволяет родителю по существу представлять 0 пикселей высоты в положении ясного, которое будет тем, что самый высокий монастырь плавающий элемент.

причина этого состоит в том, чтобы гарантировать, что родительский элемент так же высок как самый высокий столбец, фон затем установлен на родителе дать появление, что оба столбца имеют ту же высоту.

нужно отметить, что эта техника является 'oldskool', потому что лучший выбор состоит в том, чтобы инициировать это поведение расчета высоты с чем-то как clearfix или путем простого наличия переполнения: скрытый на родительском элементе.

, Пока это работает в этом ограниченном сценарии, если Вы хотите для каждого столбца выглядеть визуально отличающимися, или иметь разрыв между ними, затем устанавливая фон на родительском элементе, не будет работать, существует однако прием для получения этого эффекта.

прием должен добавить нижнее дополнение ко всем столбцам к макс. количеству размера, Вы ожидаете, что это могло быть различием между самым коротким и самым высоким столбцом, если Вы не можете решить, что это затем выбирает крупное число, затем необходимо добавить отрицательное нижнее поле того же числа.

Вы должны будете переполниться скрытый на родительском объекте, но результат будет состоять в том, что каждый столбец запросит представить эту дополнительную высоту, предложенную полем, но не на самом деле запросить расположение того размера (потому что отрицательное поле противостоит вычислению).

Это представит родителя в размере самого высокого столбца, позволяя всем столбцам представить на их высоте + размер нижнего используемого дополнения, если эта высота будет больше, чем родитель затем, то остальные просто вырежут.

<div style="overflow: hidden;">
  <div style="background: blue;float: left;width: 65%;padding-bottom: 500px;margin-bottom: -500px;">column a<br />column a</div>
  <div style="background: red;float: right;width: 35%;padding-bottom: 500px;margin-bottom: -500px;">column b</div>
</div>

Вы видите пример этой техники на эти дачи и wilkins веб-сайт (см., что четыре горизонтальных центра внимания отображают конец страницы).

100
ответ дан 3 revs 7 November 2019 в 10:33
поделиться

Необходимо перенести их в отделение без плавания.

<div style="float:none;background:#FDD017;" class="clearfix">
    <div id="response" style="float:left; width:65%;">Response with two lines</div>
    <div id="note" style="float:left; width:35%;">single line note</div>
</div>

я также использую патч clearfix на здесь http://www.webtoolkit.info/css-clearfix.html

6
ответ дан bendewey 7 November 2019 в 10:33
поделиться

Я рекомендую перенести их обоих во внешнее отделение с желаемым цветом фона.

0
ответ дан chaos 7 November 2019 в 10:33
поделиться

Вот плагин jQuery для установки высот нескольких отделений, чтобы быть тем же. И ниже фактический код плагина.

$.fn.equalHeights = function(px) {
$(this).each(function(){
var currentTallest = 0;
$(this).children().each(function(i){
    if ($(this).height() > currentTallest) { currentTallest = $(this).height(); }
        });
    if (!px || !Number.prototype.pxToEm) currentTallest = currentTallest.pxToEm(); //use ems unless px is specified
        // for ie6, set height since min-height isn't supported
    if ($.browser.msie && $.browser.version == 6.0) { $(this).children().css({'height': currentTallest}); }
        $(this).children().css({'min-height': currentTallest}); 
    });
    return this;
};
15
ответ дан Justin Yost 7 November 2019 в 10:33
поделиться

Для этого всегда можно использовать фоновое изображение. Я склонен голосовать за этот вариант в 100% случаев, поскольку единственное идеальное решение - это вариант JQuery.

Как и в случае использования внешнего div с цветом фона, вам придется иметь содержимое в обоих div, достигающее одинаковой высоты.

0
ответ дан 24 November 2019 в 14:29
поделиться

У меня тоже была подобная проблема, когда требовалось разместить три div рядом друг с другом с разным содержимым, с правыми границами, чтобы "разделить" их, единственным решением, которое сработало, была слегка измененная версия варианта jQuery в другом ответе. Помните, что вам также нужен скрипт, найденный здесь.

Ниже приведена моя слегка измененная версия скрипта, которая позволяет установить истинную минимальную высоту (поскольку мне нужно было, чтобы мои ящики были по крайней мере определенной высоты).

/*--------------------------------------------------------------------
 * JQuery Plugin: "EqualHeights"
 * by:    Scott Jehl, Todd Parker, Maggie Costello Wachs (http://www.filamentgroup.com)
 *
 * Copyright (c) 2008 Filament Group
 * Licensed under GPL (http://www.opensource.org/licenses/gpl-license.php)
 *
 * Description:   Compares the heights or widths of the top-level children of a provided element
                  and sets their min-height to the tallest height (or width to widest width). Sets in em units
                  by default if pxToEm() method is available.
 * Dependencies: jQuery library, pxToEm method    (article:
                  http://www.filamentgroup.com/lab/retaining_scalable_interfaces_with_pixel_to_em_conversion/)
 * Usage Example: $(element).equalHeights();
                  Optional: to set min-height in px, pass a true argument: $(element).equalHeights(true);
                  Optional: to specify an actual min-height (in px), pass an integer value, regardless of previous parameter: $(element).equalHeights(false,150);
 * Version: 2.0, 08.01.2008
--------------------------------------------------------------------*/

$.fn.equalHeights = function(px,minheightval) {
    $(this).each(function(){
        if (minheightval != undefined) { 
            var currentTallest = minheightval;    
        } 
        else { 
            var currentTallest = 0;
        }
        $(this).children().each(function(i){
            if ($(this).height() > currentTallest) { 
                currentTallest = $(this).height();
            }
        });
        if (!px || !Number.prototype.pxToEm) 
            currentTallest = currentTallest.pxToEm(); //Use ems unless px is specified.
        // For Internet Explorer 6, set height since min-height isn't supported.
        if ($.browser.msie && $.browser.version == 6.0) { 
            $(this).children().css({'height': currentTallest});
        }
        $(this).children().css({'min-height': currentTallest});
    });
    return this;
};

Он работает как шарм и ничего не тормозит :)

0
ответ дан 24 November 2019 в 14:29
поделиться