Одним из способов достижения этого является использование position: absolute
и помещение ввода в оболочку. Позвольте мне показать вам:
.input-wrapper {
position: relative;
}
.input-wrapper img {
position: absolute;
top: 5px;
left: 5px;
}
input {
height: 40px;
width: 200px;
padding-left: 35px;
font-size: 20px;
box-sizing: border-box;
}
<div class="input-wrapper">
<img src="https://picsum.photos/30"/>
<input type="text" />
</div>
Так что в основном мы используем position: relative
для перемещения img относительно него. Также обратите внимание, что вам нужно добавить дополнительные padding
(в данном случае левый), чтобы текст не перекрывался с иконкой.
Есть много способов сделать то же самое: position: relative
, отрицательный margin
, background-image
, использование псевдоэлементов, но абсолютное позиционирование, на мой взгляд, наиболее семантически правильно.
Пример Python, пользующийся Библиотекой Стандарта Python
В Python, , модуль рассола используется для сериализации. Так, процесс сериализации называют соление в Python. Этот модуль доступен в библиотеке стандарта Python .
Сериализация с помощью рассола
import pickle
#the object to serialize
example_dic={1:"6",2:"2",3:"f"}
#where the bytes after serializing end up at, wb stands for write byte
pickle_out=open("dict.pickle","wb")
#Time to dump
pickle.dump(example_dic,pickle_out)
#whatever you open, you must close
pickle_out.close()
файл РАССОЛА (может быть открыт текстовым редактором как блокнот) содержит это (сериализированные данные):
в‚ ¬} q (KX 6qKX 2qKX fqu.
Десериализация с помощью рассола
import pickle
pickle_in=open("dict.pickle","rb")
get_deserialized_data_back=pickle.load(pickle_in)
print(get_deserialized_data_back)
Вывод:
{1: '6', 2: '2', 3: 'f'}
JSON - это формат, который кодирует объекты в строку. Сериализация означает преобразование объекта в эту строку, а десериализация - это обратная операция.
При передаче данных или хранении их в файле требуется, чтобы данные были байтовыми строками, но сложные объекты редко имеют такой формат. Сериализация может преобразовать эти сложные объекты в байтовые строки для такого использования. После передачи байтовых строк получатель должен будет восстановить исходный объект из байтовой строки. Это называется десериализацией.
Скажем, у вас есть объект
{foo: [1, 4, 7, 10], bar: "baz"}
сериализация в JSON преобразует его в строку:
'{"foo":[1,4,7,10],"bar":"baz"}'
которую можно хранить или передавать по проводам куда угодно. Получатель может затем десериализовать эту строку, чтобы получить обратно исходный объект. {foo: [1, 4, 7, 10], bar: "baz"}
.