Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   увеличение блока (https://javascript.ru/forum/misc/69168-uvelichenie-bloka.html)

Mmorgan 02.06.2017 17:44

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

рони 02.06.2017 17:51

Цитата:

Сообщение от Mmorgan
до размеров браузера

:blink:

Mmorgan 02.06.2017 17:54

:( угу

рони 02.06.2017 20:11

div по ширине и высоте видимой части окна
 
Mmorgan,
что такое размеры браузера, известно только вам ...
вопрос знатокам, подскажите , как в данном примере выровнять текст по центру с помощью css.
без вычисления в строке 37(вариант с flex ниже)
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  body, html{
    height: 100%;
    padding: 0;
    margin: 0;
  }
  .item.big{
    background-color: #FF00FF;
    transform: scale(1);
  }
  .item{
    height: 100%;
    transform: scale(0);
    transform-origin: center;
    transition: all 8s ease-in-out 1s;
    color: #FFFFFF;
    width: 100%;
    text-align: center;
    line-height: 100px;
    font-size: 48px;
  }

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script>
$(function() {
  var div = $("<div class='item'></div>");
  $("body").append(div).width();
  $(window).resize(function() {
   div.html([div.width(),div.height()].join(" x "))
.css({"line-height":div.height() +"px"})
}).resize();
div.addClass("big")
});
  </script>
</head>

<body>
</body>
</html>

рони 02.06.2017 20:20

выравнивание текста по центру flex
 
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  body, html{
    height: 100%;
    padding: 0;
    margin: 0;
  }
  .item.big{
    background-color: #FF00FF;
    transform: scale(1);
  }
  .item{
    height: 100%;
    transform: scale(0);
    transform-origin: center;
    transition: all 8s ease-in-out 1s;
    color: #FFFFFF;
    width: 100%;
    font-size: 48px;
    display: flex;
    justify-content: center;
    align-items: center;

  }

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script>
$(function() {
  var div = $("<div class='item'></div>");
  $("body").append(div).width();
  $(window).resize(function() {
   div.html([div.width(),div.height()].join(" x "))
}).resize();
div.addClass("big")
});
  </script>
</head>

<body>
</body>
</html>

Mmorgan 02.06.2017 20:34

рони,
Спасибо огромное, вы меня просто спасли, еще вопрос просто для уточнения, это ни как не сделать без Ajax?

рони 02.06.2017 20:57

Цитата:

Сообщение от Mmorgan
это ни как не сделать без Ajax?

мне сложно понять о чём вы пишите, надеюсь это не какой-то стёб.

да, можно сделать тоже самое без jquery. (но это уже сами https://learn.javascript.ru/document)

Smurf 04.06.2017 19:35

рони,
схожая проблема, может в курсе,

у меня div растет с animate, до 700px, есть возможность вывести его размеры в реальном времени? то есть div увеличивает свои размеры и на протяжении всего его роста,выведенные размеры меняются, ну допустим с каким то адекватным интервалом?

рони 04.06.2017 20:01

Цитата:

Сообщение от Smurf
растет с animate

если jquery, то параметр step

destus 04.06.2017 20:44

рони,
Цитата:

выровнять текст по центру с помощю css
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  body, html{
    height: 100%;
    padding: 0;
    margin: 0;
  }
  .item.big{
    background-color: #FF00FF;
    transform: scale(1);
  }
  .item{
    height: 100%;
    transform: scale(0);
    transform-origin: center;
    transition: all 8s ease-in-out 1s;
    color: #FFFFFF;
    width: 100%;
    font-size: 48px;
position: relative;
  }

.item span {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script>
$(function() {
  var div = $("<div class='item'></div>");
  $("body").append(div).width();
  $(window).resize(function() {
   div.html('<span>' + [div.width(),div.height()].join(" x ") + '</span>')
}).resize();
div.addClass("big")
});
  </script>
</head>

<body>
</body>
</html>


Часовой пояс GMT +3, время: 02:25.