Боявшаяся iframe горизонтальная полоса прокрутки не может быть удалена в IE?

Относительно этой части Вашего примера кода:

X = X + 1

Очень распространенная ошибка для людей, плохо знакомых с Прологом. `` = '' В Прологе означает «то же, что и». Следовательно, приведенный выше фрагмент кода объявляет «X такой же, как X + 1». По крайней мере, это должно быть:

X = Y + 1

Однако это не совсем то, что Вам нужно, потому что:

?- Y = 2 , X = Y + 1  .
X = Y + 1
Y = 2

Для того, чтобы Пролог поставил результат математики вычисление с правой стороны в переменную с левой стороны, используйте _lhs_ is _rhs_.

?- Y = 2 , X is Y + 1  .
X = 3
Y = 2

В отношении вопроса

How can I check if X has a value before doing an increment to it.

when(ground(_variable_),(_thing_to_do)) - лучший из доступных вариантов.

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

реализация

goal_expansion((_lhs_ =:= _rhs_),(when(ground(_rhs_),(_lhs_ is _rhs_))))  .

:- op(2'1,'yfx','list')  .

_list_ list [size:_size_] :-
_list_ list [size:_size_,shrink:_shrink_] ,
_list_ list [size:_size_,shrink:_shrink_,size:_SIZE_]  .

_list_ list [size:0,shrink:false]  .

_list_ list [size:_size_,shrink:true] :-
when(ground(_size_),(_size_ > 0))  .

[] list [size:0,shrink:false,size:0] .

[_car_|_cdr_] list [size:_size_,shrink:true,size:_SIZE_] :-
(_SIZE_ =:= _size_ - 1) ,
(_size_ =:= _SIZE_ + 1) ,
_cdr_ list [size:_SIZE_]  .

тестирование

/*
   ?- L list Z .
L = [],
Z = [size:0] ? ;
L = [_A],
Z = [size:1] ? ;
L = [_A,_B],
Z = [size:2] ? ;
L = [_A,_B,_C],
Z = [size:3] ?
yes

   ?- L list [size:0] .
L = [] ? ;
no
   ?- L list [size:1] .
L = [_A] ? ;
no
   ?- L list [size:2] .
L = [_A,_B] ? ;
no

   ?- [] list [size:S] .
S = 0 ? ;
no
   ?- [a] list [size:S] .
S = 1 ? ;
no
   ?- [a,b] list [size:S] .
S = 2 ? ;
no
   ?- [a,b,c] list [size:S] .
S = 3 ? ;
no
   ?- 
*/
19
задан mrjrdnthms 15 September 2008 в 21:49
поделиться

6 ответов

scrolling="yes"  horizontalscrolling="no" verticalscrolling="yes"

Помещенный это в Ваш тег iFrame.

Вы не должны бездельничать с попыткой отформатировать это в CSS.

44
ответ дан 30 November 2019 в 01:59
поделиться

Полоса прокрутки не является свойством эти <iframe>, это - свойство страницы, которую это содержит. Попытайтесь поместить overflow-x: hidden на <html> элемент внутренней страницы.

25
ответ дан 30 November 2019 в 01:59
поделиться

Вы могли попытаться поместить iframe в отделении и затем использовать отделение для прокрутки. Можно управлять прокруткой на отделении в IE без проблем, IE только действительно имеет проблемы с прокруткой iframe. Вот быстрый пример, который должен добиться цели.

<html>
    <head>
        <title>iframe test</title>

        <style>         
        #aTest { 
            width: 120px;
            height: 50px;
            padding: 0;
            border: inset 1px #000;
            overflow: auto;
        }

        #aTest iframe {
            width: 100px;
            height: 1000px;
            border: none;
        }
        </style>
    </head>
    <body>
        <div id="aTest">
            <iframe src="whatever.html" scrolling="no" frameborder="0"></iframe>
        </div>
    </body>
</html>
5
ответ дан 30 November 2019 в 01:59
поделиться
<iframe style="overflow:hidden;" src="about:blank"/>

должен работать в IE. IE6 имел проблемы, поддерживающие переполнение-x и переполнение-y.

Еще одна вещь отметить состоит в том, что IE граничит с iframe, может только быть удален, если Вы устанавливаете атрибут "frameborder" в Camel-регистре.

<iframe frameBorder="0" style="overflow:hidden;" src="about:blank"/>

было бы хорошо, если Вы могли бы разработать его правильно с CSS, но это не работает в IE.

0
ответ дан 30 November 2019 в 01:59
поделиться

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

Итак, для моего сайта, где я могу контролировать фиксированную высоту всех IFRAMES, это следующее решение работает очень хорошо. Он просто скрывает горизонтальную прокрутку с div :)

    <!-- This DIV is a special hack to hide the horizontal scrollbar in IE iframes -->
<!--[if IE]>
<div id="ieIframeHorScrollbarHider" style="position:absolute; width: 768px; height: 20px; top: 850px; left: 376px; background-color: black; display: none;">
</div>
<![endif]-->
<script type="text/javascript">
  if (document.getElementById("idOfIframe") != null && document.getElementById("ieIframeHorScrollbarHider") != null)
  {
    document.getElementById("ieIframeHorScrollbarHider").style.display = "block";
  }
</script>
0
ответ дан 30 November 2019 в 01:59
поделиться

Вы также можете попробовать установить ширину тела страницы, которая включается в iframe, равной 99%.

0
ответ дан 30 November 2019 в 01:59
поделиться
Другие вопросы по тегам:

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