CSS: высота текстовой области в процентах от высоты области просмотра

String a = new String("foo");
String b = new String("foo");
System.out.println(a == b); // prints false
System.out.println(a.equals(b)); // prints true

Убедитесь, что вы понимаете, почему. Это потому, что сравнение == сравнивает только ссылки; equals() метод сопоставляет содержимое по символу.

Когда вы вызываете new для a и b, каждый получает новую ссылку, указывающую на "foo" в таблице строк. Ссылки разные, но контент один и тот же.

13
задан Craig Walker 12 January 2011 в 23:25
поделиться

5 ответов

А простая высота: 50% не добиваются цели.

нет, потому что его родитель не имеет явной высоты. Так 50% какой? Parent говорит, что ‘auto’, что означает основу это на высоте дочернего содержания. Который зависит от высоты на родителе. Argh! и т.д.

, Таким образом, необходимо дать его родителя один процент высотой. И родитель родителя, полностью до корня. Документ в качестве примера:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>
    <style type="text/css">
        html, body { margin: 0; padding: 0; }
        html, body, #mything, #mything textarea { height: 100%; }
    </style>
</head><body>
    <div id="mything">
        <textarea rows="10" cols="40">x</textarea>
    </div>
</body></html>

другая возможность, если Вы не хотите должными быть устанавливать высоту на всем, состоит в том, чтобы использовать абсолютное расположение. Это изменяет элемент, что размеры на основе от прямого родителя до ближайшего предка с установкой ‘position’ кроме значения по умолчанию ‘static’. Если нет никаких элементов предка с расположением, то размеры основаны на “Initial, Содержащем Block”, который является тем же размером как область просмотра.

Наконец, существует тривиальная проблема ‘100%’, являющегося немного слишком большим из-за дополнительного дополнения, и граница относилась к текстовым областям. Можно работать вокруг этого:

  • заключение компромисса на чем-то как 95%, или
  • дополнение установки и граница к 0/ни один на текстовой области, или
  • “box-калибровка использования: поле границы; ” для изменения то, что означает ‘height’. Это - функция супа будущего CSS, которая требует многих дополнительных определенных для браузера повторных заявлений (таких как †˜-moz-box-sizing’).
41
ответ дан bobince 13 January 2011 в 09:25
поделиться
  • 1
    Потрясающий ответ. Это точно, что я искал. – Chris Knadler 18 June 2013 в 18:05

Можно сделать это при установке display:block. Но в html 4.01, строгом, необходимо определить седла и строки, но я думаю, что можно переопределить их с css.

1
ответ дан Vasil 13 January 2011 в 09:25
поделиться
  • 1
    С PyCharm 3.x, it' s в Файле » Настройки » Шаблонные Языки Python. Я использовал эту ту же установку для активации выделения синтаксиса в .js файлах это I' m использующий в качестве шаблонов. – Seth 13 January 2014 в 22:49

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

я протестировал это в Internet Explorer 7 и Firefox 3.0.

Просто используют следующий код:

<textarea style="height: 50%; width: 80%;">Your text here</textarea>

, С каким браузером (браузерами) у Вас были проблемы?

0
ответ дан Brian 13 January 2011 в 09:25
поделиться

HTML и CSS не так хороши в выполнении такого рода вещи с высотами. Они определенно больше о прокрутке вертикально через свободно плавную страницу. Я думаю, что JavaScript, вероятно, будет Вашей большей частью полного решения, как заявляет FryGuy.

1
ответ дан Kevin Conner 13 January 2011 в 09:25
поделиться

Я думаю, что необходимо использовать JavaScript в некотором роде, чтобы сделать это. Обработайте изменять размеры событие и установите текстовую область, чтобы быть что много пикселей.

2
ответ дан FryGuy 13 January 2011 в 09:25
поделиться
  • 1
    Функция .sort автоматически называет notifyDataSetChanged, поэтому при использовании этого кода со встроенным видом, you' ll входят в бесконечный цикл и переполняют Вашего стека. Только сделайте это если you' ре, управляющее списком самостоятельно, но большинством людей, использующих Адаптер Массива, является not' t выполнение этого. – elBradford 28 August 2013 в 03:30
Другие вопросы по тегам:

Похожие вопросы: