Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 02.08.2021, 10:15
Новичок на форуме
Отправить личное сообщение для ShuShuShu Посмотреть профиль Найти все сообщения от ShuShuShu
 
Регистрация: 02.08.2021
Сообщений: 3

Помогите понять, как создать пирамиду из html-тегов с помощью цикла.
Как это сделать с числами я нашел.
for (let i = 1; i <= 9; i++) {
	let str = ''; // каждый раз зачищаем строку
	for (let j = 1; j <= i; j++) {
		str += i;
	}
	document.write(str + '<br>');
}

А вот как это сделать так чтобы количество html-тегов
<div class="flex-item color"></div>
с каждой итерацией цикла увеличивалось понять не могу.
<!DOCTYPE html>
<head>
    <meta charset="UTF-8">
    <title>Example 2</title>
    <style>
        #game {
            width: 1000px;
            height: 1000px;
        }
        .flex-container {
            display: flex;
        }
        .center {
            justify-content: center;
        }
        .flex-item {
            height: 100px;
            width: 100px;
            border: 1px solid white;
        }
        .color {
            background-color: #9BC850;
        }
    </style>
</head>
<body>
    <div id="game"></div>
    <script>
        for (let i = 0; i < 3; i++) {
            for (let l = 0; l < 1; l++) {}
            document.getElementById('game').innerHTML += '<div id="block" class="flex-container center"><div class="flex-item color"></div></div>'
        }
    </script>
</body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 02.08.2021, 10:55
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

ShuShuShu, ты бы сделал ХТМЛ, который ты собираешься получить в итоге...
Ответить с цитированием
  #3 (permalink)  
Старый 02.08.2021, 11:10
Новичок на форуме
Отправить личное сообщение для ShuShuShu Посмотреть профиль Найти все сообщения от ShuShuShu
 
Регистрация: 02.08.2021
Сообщений: 3

В итоге должно получится вот так.
<!DOCTYPE html>
<head>
    <meta charset="UTF-8">
    <title>Example 2</title>
    <link rel="stylesheet" href="css/style.css">
</head>
<body>
    <div id="block" class="flex-container center">
        <div class="flex-item color"></div>
    </div>
    <div id="block" class="flex-container center">
        <div class="flex-item color"></div>
        <div class="flex-item color"></div>
        <div class="flex-item color"></div>
    </div>
    <div id="block" class="flex-container center">
        <div class="flex-item color"></div>
        <div class="flex-item color"></div>
        <div class="flex-item color"></div>
        <div class="flex-item color"></div>
        <div class="flex-item color"></div>
    </div>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 02.08.2021, 12:14
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от ShuShuShu
id="block"
С ИД так не пойдет...
ИД должно быть уникальным на странице.
Ответить с цитированием
  #5 (permalink)  
Старый 02.08.2021, 12:26
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,123

Сообщение от ShuShuShu
В итоге должно получится вот так.
Тогда так и пиши...

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<!--
<script src="https://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
-->
<style>
div {
	min-height: 10px;
	border: 1px solid;
	margin: 10px;
}
</style>
<script>
</script>
</head>
<body>
<script>
for (let i = 0; i < 3; i++) {
	const container = document.getElementsByTagName('body')[0]
	let ln = document.createElement('div')
	ln.classList.add('flex-container')
	ln.classList.add('center')
	const max = i * 2 + 1
	for (let j = 0; j < max; j++) {
		let o = document.createElement('div')
		o.classList.add('flex-item')
		o.classList.add('color')
		ln.appendChild(o)
	}
	container.appendChild(ln)
}
</script>
</body>
</html>
Ответить с цитированием
  #6 (permalink)  
Старый 02.08.2021, 13:14
Новичок на форуме
Отправить личное сообщение для ShuShuShu Посмотреть профиль Найти все сообщения от ShuShuShu
 
Регистрация: 02.08.2021
Сообщений: 3

Спасибо большое! Кажется немного разобрался и понял информацию по каким темам мне нужно читать. Спасибо.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите уже месяц не могу понять как это сделать... CTEPEOTUn Общие вопросы Javascript 5 13.04.2011 00:21
Как с помощью PHP сохранить какие-либо изменения в HTML документе? FirstFrost Работа 6 06.09.2010 16:16
Как с помощью PHP сохранить какие-либо изменения в HTML документе? FirstFrost Общие вопросы Javascript 1 15.07.2010 17:12
Как с помощью JavaScript сохранить какие-либо изменения в HTML документе? FirstFrost Общие вопросы Javascript 1 15.07.2010 16:23
Как с помощью JS "на-лету" менять часть HTML кода greendoc Общие вопросы Javascript 2 18.03.2008 20:43