웹페이지

148june 2025. 2. 19. 10:48

방명록




방명록 내용

    코드는

    <!DOCTYPE html>
    <html lang="ko">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>방명록</title>
        <style>
            .guest-book-container {
                width: 80%;
                max-width: 600px;
                margin: 20px auto;
                padding: 20px;
                background-color: #f9f9f9;
                border-radius: 12px;
                box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
                border: 2px solid #ddd;
            }
    
            .guest-book ul {
                list-style-type: none;
                padding: 0;
            }
    
            .guest-book li {
                margin-bottom: 10px;
            }
    
            textarea {
                width: 80%;
                padding: 8px;
                font-size: 16px;
                margin-bottom: 10px;
                box-sizing: border-box;
            }
    
            input[type="text"] {
                width: 30%;
                padding: 8px;
                font-size: 16px;
                margin-bottom: 10px;
                box-sizing: border-box;
            }
    
            button {
                margin-top: 10px;
                padding: 10px 20px;
                background-color: #000000;
                color: white;
                border: none;
                cursor: pointer;
            }
    
            button:hover {
                background-color: #333;
            }
    
            
            .message-box {
                display: flex;
                justify-content: space-between;
                align-items: center;
                width: 80%;
                max-width: 600px;
                border: 2px solid #333;
                padding: 20px;
                border-radius: 12px;
                background-color: #fdf6e3;
                box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.2);
                margin-bottom: 10px;
            }
    
            .button-group {
                display: flex;
                gap: 5px;
            }
    
            
            .edit-btn {
                background-color: #0067A3;
                padding: 8px 16px;
            }
    
            .delete-btn {
                background-color: #e74c3c;
                padding: 8px 16px;
            }
        </style>
    </head>
    
    <body>
        <div class="guest-book-container">
            <div class="guest-book">
                <h3>방명록</h3>
                <form id="guestBookForm">
                    <label for="name">이름:</label><br>
                    <input type="text" id="name" name="name" required placeholder="이름을 입력하세요"><br>
                    <label for="message">내용:</label><br>
                    <textarea id="message" name="message" required placeholder="방명록 내용을 입력하세요"></textarea>
                    <button type="submit">저장</button>
                </form>
                <h4>방명록 내용</h4>
                <ul id="guestMessages"></ul>
            </div>
        </div>
    
        <script>
            const guestMessages = document.getElementById('guestMessages');
    
            document.getElementById('guestBookForm').addEventListener('submit', function (event) {
                event.preventDefault();
                const name = document.getElementById('name').value;
                const message = document.getElementById('message').value;
                addMessage(name, message);
            });
    
            function addMessage(name, message) {
                const messageBox = document.createElement('div');
                messageBox.className = 'message-box';
    
                const textSpan = document.createElement('span');
                textSpan.textContent = `${name}: ${message}`;
    
                const buttonGroup = document.createElement('div');
                buttonGroup.className = 'button-group';
    
                const editButton = document.createElement('button');
                editButton.className = 'edit-btn';
                editButton.textContent = '수정';
                editButton.onclick = () => editMessage(textSpan, name, message);
    
                const deleteButton = document.createElement('button');
                deleteButton.className = 'delete-btn';
                deleteButton.textContent = '삭제';
                deleteButton.onclick = () => messageBox.remove();
    
                buttonGroup.appendChild(editButton);
                buttonGroup.appendChild(deleteButton);
    
                messageBox.appendChild(textSpan);
                messageBox.appendChild(buttonGroup);
    
                guestMessages.appendChild(messageBox);
            }
    
            function editMessage(textSpan, oldName, oldMessage) {
                const newName = prompt("이름을 수정하세요", oldName);
                const newMessage = prompt("내용을 수정하세요", oldMessage);
                if (newName && newMessage) {
                    textSpan.textContent = `${newName}: ${newMessage}`;
                }
            }
        </script>
    </body>
    
    </html>