Full Text 01
Full Text 01
Full Text 01
in Web Programming
May 2022
Olle Lundmark
The authors declare that they are the sole authors of this thesis and that they have not used
any sources other than those listed in the bibliography and identified as references. They further
declare that they have not submitted this thesis at any other institution to obtain a degree.
Contact Information:
Author:
Olle Lundmark
E-mail: ollu19@student.bth.se
University advisor:
Mr Bo Peterson
Department of Computer Science
A new device gets released almost bi-weekly, some offering a unique take on resolution
or aspect ratio. For a web developer, this means that they have to constantly adapt
and respond to how modern devices interact with the web, and create solutions that
work for the visitors. This puts a lot of pressure on the developer to create a good,
responsive webpage that is not expecting a certain device, but rather works fluently
no matter the exact size of device.
In this study this development is researched and discussed, from the viewpoint of
what the differences are between established and future devices, what developments
that might arise tomorrow and how to react to these as a developer. The goal
is also to research what methods of responsive web development works best with
these devices, and what might become an issue when newer devices are released and
becoming widely used.
The research is split up into two parts, one part comparing three popular frame-
works and their responsiveness-related functions and the second part reviewing earlier
work regarding responsiveness for modern devices.
Modern, well developed frameworks offer a lineup of functions for responsive web
development, most which integrate well when met with non-standard resolutions or
devices with the tradeoff of being more heavyweight and less customizable. Research
concluded that modern frameworks are covering most aspects of responsive web de-
velopment, and offers a good base to implement responsive web development for
future devices.
Developing from having two different webpages, one mobile and one for a home
PC, now almost every large webpage implements a responsive and adaptable interface
which fits many more devices without slotting them into a specific niche. After this
became standard, more and more unique devices could reliably browse the web.
What is left is a discussion regarding what the future might hold in the case of other
input devices such as voice input, small displays such as smart watch displays, and
how this technique can be adapted to handle these devices as well.
Abstract i
1 Introduction 1
1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Scope of Research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2.1 End goal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2 Related Work 3
2.1 Earlier works and discussions . . . . . . . . . . . . . . . . . . . . . . 3
3 Method 5
3.1 The Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1.1 Q1: What are the noticeable differences regarding web respon-
siveness between established devices and newer devices? . . . . 5
3.1.2 Q2: How do already established frameworks for responsiveness
applications interact with unique or differing devices? . . . . . 5
3.1.3 Q3: What or which responsiveness techniques are well suited
for modern devices? . . . . . . . . . . . . . . . . . . . . . . . . 6
3.1.4 Q4: What advantages and disadvantages are there with mod-
ern devices, from the viewpoint of a web developer? . . . . . . 6
3.2 The Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5 Discussion 21
5.1 Prefacing words - Discussion . . . . . . . . . . . . . . . . . . . . . . . 21
5.2 The Framework Comparison . . . . . . . . . . . . . . . . . . . . . . . 21
5.2.1 Navigation and Menus . . . . . . . . . . . . . . . . . . . . . . 21
iii
5.2.2 Input and Interaction . . . . . . . . . . . . . . . . . . . . . . . 22
5.2.3 Ease of implementation . . . . . . . . . . . . . . . . . . . . . . 23
5.3 Earlier research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.4 The Summarization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.4.1 Modern Devices . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.4.2 Frameworks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
iv
List of Figures
v
Chapter 1
Introduction
1.1 Background
The Internet is based on that the person in front of the web application is using a
monitor in front of them, together with a mouse and a keyboard. When the mobile
phones and other portable devices later took place as the leading web browsing
device, the development had to adjust accordingly.
Devices used for web browsing today are many. Other than the most popular
devices such as mobile phones, there are devices such as foldable phones and car
infotainment systems which helps us to navigate the world wide web. Today, only
about 42 percent of web visitors use a computer [39], pointing towards the decline of
computer-related web browsing together with the increase of other means of browsing.
This leads to web developers needing further adjustments to fit the ever-changing
array of devices.
This report is meant to reflect and research how the web application of the future
might need to be shaped in order to fit the demands, as well as what already existing
methods solves these issues.
A web application with good responsiveness adapts well towards different device
screen sizes and aspect ratios, displays the content well without removing or hiding
important information. Text should fit as much of the screen as possible while not
being too large to read, images should be easy to see and menus, lists or tables should
be easy to navigate.
This means that the developer needs to implement methods to change the layout
of the information displayed at certain moments, and in some cases even remove
information from the web application. As P. LePage [33] displays in his article
Responsive web design basics, this puts a lot of work in the hands of the web developer
in order to reach a good level of responsiveness in your applications.
1
2 Chapter 1. Introduction
• In 2011, the author and developer Stephen Hay tweeted “There is no Mobile
Web. There is only The Web, which we view in different ways. There is also no
Desktop Web. Or Tablet Web. Thank you.” [40] Hay shared the point of view
that a webpage should not be seen as different depending on the device it is
aimed at, but rather just a restructure of the same page. His viewpoint is of a
developer, constantly changing to be able to accommodate upcoming devices.
Hay continues to press that a webpage should not be seen as "mobile web-
site" only when the layout is changed, but rather just a "webpage". This is
an interesting approach, but ties well into the web responsiveness discussion
considering a method might be to simply develop a webpage that dynamically
changes, and therefore should fit most if not all modern devices.
3
4 Chapter 2. Related Work
• In 2014, Mikkonen (as mentioned earlier) together with Taivalsaari and Systä
wrote an essay regarding the device development over the years. [42] This re-
search paper is aiming more towards the development of multiple-device own-
ership, and what will happen with programs that are meant to seamlessly work
on multiple devices. It is not necessarily aimed towards web development, but
rather application development as a whole.
This could be put in relation to the development of web applications, since
there are a lot of similarities. This research paper also analyzes how many
devices an average person has, and how these interact with eachother.
These articles and research papers closely discusses this topic, and is relevant
in a few ways that will be more intricately discussed later on in this report. They
are all discussing the topic web responsiveness, but from different viewpoints. One
article is considering how many different devices a single person might have, while
another article discusses the viewpoint from the developer and how to tackle the
multiple-device development issues that might occur.
Chapter 3
Method
5
6 Chapter 3. Method
• Styling and Normalization, to unify different devices styles before applying the
developers own formatting
The most important category, Responsive Functions, contains aspects that were
researched. These were
8 Chapter 3. Method
The reason these were the chosen parameters was because of their importance in
a responsive web application. Some areas are also very wide, resulting in different
solutions to issues depending on the framework.
These factors are used when deciding what is beneficial for a framework in this
comparison, and what might be detrimental in the aspect of responsive web devel-
opment.
9
10 Chapter 4. Results and Analysis
The Website
The webpage that was implemented using Skeleton is a blog-style webpage containing
mainly news articles. The implementation also contains a header menu with links,
and a sidebar with ad-space and social media links.
Grid System
There are preset breakpoints in Skeleton that the developer can use to create a
responsive layout to their web page. This is all accomplished thanks to Skeletons
grid system. The grid system acts as columns where the developer easier can control
the layout, and shift the layout quickly when a specific viewport width is used.
The grid can, for example, structure the blocks in a side by side manner when
a viewport is wide enough to accommodate content columns, but take up the entire
width of the viewport when viewed on a smaller device. This is shown in figure 4.2
and 4.3, where a comparison is shown between a large viewport and a small viewport.
4.1. Part One: The Framework Comparison 11
The skeleton grid system has several breakpoints, although for simplicity in this
implementation three breakpoints are used. When passing the first breakpoint at
960 pixels, the margins are adjusted so the information is centered. A more critical
breakpoint is where a phone user might pass is when the viewport is under 768 pixels
in width. At this breakpoint the images for the articles are hidden, making place
for the article headers and article text for smaller devices. Furthermore the sidebar
with social links and sponsors is moved to the bottom of the page, and the footer is
stretched over the entirety of the viewport.
The grid resizes itself up to 960 pixels in width, where it will stop becoming
wider. This can be modified if the webpage is meant for larger displays, or for a
taste preference.
Responsive Functions
Skeleton as a framework does not support many more functions, as it is meant as
a very lightweight styling framework helping with responsiveness on a basic level.
Therefore this framework does not contain any responsive functions other than a few
helper classes to aid in
The Website
The webpage that was implemented using foundation is another magazine-style web-
site containing articles, social media links and a header with a menu. See figures 4.4
and 4.5 for screenshots of the page.
At the top of the webpage there is what Foundation calls the "Title bar", which
can be used for implementing a menu on mobile devices. It contains a search bar, and
simple responsive implementations in the form of resizing depending on the viewport
size. It also contains a handful of links.
Grid System
Like Skeleton, Foundation also implements a grid system. This is a twelve-column
layout supporting a customizable sizing. Other features exists to further create
a responsive grid layout, including but not limited to customizable gutters (space
between grid columns), offsets to move grid blocks left or right, and the grid being
fully nest-able to create special layouts.
Foundation also supports several different grid types, one of them being the "XY
Grid" [20], which is a more advanced grid system supporting placing columns beside
each other, filling up available viewport space and their relation between such as the
above or below each other.
This grid also supports more advanced functions such as automatic responsive
resizing of grid elements or columns, horizontal and vertical alignment and vertical
orientation of the grid.
Responsive Functions
The Foundation framework has wide and well-covering support of responsive im-
plementations, having CSS classes that help when implementing items like embed
4.1. Part One: The Framework Comparison 13
Some other noteworthy functions that Foundation offers (from the responsiveness
viewpoint) are:
14 Chapter 4. Results and Analysis
The Website
The web page implemented using Bootstrap is a blog-style or news-magazine-style
web page, similar to the Skeleton and Foundation implementations. See figure 4.10.
The implementation contains a header with a title, some links to different sub-
jects, a search bar and sign up/subscribe buttons. There are postcard-style entries
where different articles together with images are shown, and some enhanced articles
that take up a larger portion of the viewport. Furthermore comes a list of posts,
together with a smaller sidebar containing links to archived posts and some text
blocks.
4.1. Part One: The Framework Comparison 15
Grid System
Bootstrap builds upon a style normalization, or as they like to call it a "Reboot." [7]
As mentioned with the other frameworks, this style normalization helps the de-
veloper maintain an easy to work with, consistent styling throughout the web page.
This function results in the content being legible, consistent and well marginalized
for layout purposes. It also serves purpose as a kind of safety measure, preventing
some elements that might normally be resizable to instead be only a specific size to
prevent that element to break an intended layout.
There are also some improvements over default CSS rules other than some added
margins. One example is that important functions like elements that have the hidden-
property is made !important, preventing some cases where the hidden property is
de-prioritized.
Responsive Functions
The Bootstrap framework contains plenty different functions that help the developer
to create a responsive web page. For images, there are helper classes such as img-fluid
which makes the image respond according to its parent size, making the image play
well with resizing div s. There are also a few helper classes for aligning images both
vertically and horizontally. [6] Tables are also not left out, supporting helper classes
that makes any table that is larger than the viewport width to become scroll-able
sideways.
When adding other types of embed content to your web page such as an iframe,
there is a helper class meant to support the content maintaining a certain aspect
ratio and instead resize accordingly. For example, one could make sure that an
embed video maintains an aspect ratio of 16x9 when resizing the viewport.
16 Chapter 4. Results and Analysis
Sizes
The strength and selling-point in the Skeleton framework is clearly its minimal size
and smooth approach to framework development. In comparison to Foundation and
Bootstrap, Skeleton is barely even a framework and more a basis for the developer
to, in a very light manner, get a solid foundation for their project. This can prove
to be more efficient and easier to work with, with the obvious drawback of missing
some very good features such as specific functions or preset breakpoints for easy
responsiveness management.
4.1. Part One: The Framework Comparison 17
Responsive functions
More specifically, when implementing a web page intended to be easily usable on
unique or special devices, there are a few functions that help the developer achieve
this goal.
Grid differences
When comparing grid implementations Skeleton comes in at a very light pace, while
Bootstrap and Foundation offers more functions. Bootstrap offers functions like
stacking a certain grid element at a certain display size (and making some other
elements only stack at a different display size), horizontal or vertical grid element
alignment, reordering grid elements depending on display size and fully customizable
grid layout and gutter (margin) size.
The Foundation grid by comparison also includes stacking at specific display sizes,
although only by row and not down to each grid element as Bootstrap. Foundation
also incorporates other functions such as offsets for customizing element placements,
removing the grid gutter at specific viewports aswell as inverting the stacking be-
haviour, stacking the elements by default then unstacking at a specific, larger view-
port.
18 Chapter 4. Results and Analysis
Navigation
One large point differing these three frameworks is how they handle menu respon-
siveness. Skeleton for example does not offer any help when creating a responsive
header menu for a webpage, meaning that displaying different menus depending on
the size of the viewport and breakpoints has to be fully implemented manually. In
comparison, both the Foundation and Bootstrap frameworks already support fully
implementable solutions to this in the form of menus with specific CSS classes added
onto them, which then later can dynamically be called depending on the size of the
viewport. [5, 18]
Other points
When determining the size of the device used, the width of the viewport is mea-
sured. The horizontal size is not measured nor used in any of the three frameworks
when estimating the device size. This also means the aspect ratio is not used when
determining what methods to apply to display the application and its content.
2012. [13] ) During the article, Marcotte further discussed media-tag use-cases such
as changing a menu layout on a smaller device, or moving logos and images to fit a
smaller screen better. These are both ideas later implemented for easier use by the
example frameworks mentioned earlier in this report.
In 2014, during the User Interface Software and Technology conference, Gilbert
Louis Bernstein and Scott Klemmer proposed a solution to the responsiveness dis-
cussion. Their idea was a system that is interpreting current website content, and
tries to rearrange the content in a way to fit the device. It was intended to work
similarly to the grid systems found in earlier mentioned frameworks. A working
prototype was also developed for proof of concept using a small sample size of web-
pages, but the project was never actualized more than so. [28]. The programming
practices back in 2014 were noticably different regarding responsive web design as
opposed to today, which might be the result of webpages being visited more often on
phones now than ever before, up from 30 percent in 2015 to 55 percent at the end
of 2021. [8] According to StatCounter, this number is even up to 58 percent today
while the market share back in 2014 was only 32 percent mobile devices. Back in
2012, when browsers started supporting responsive implementations, the mobile web
visitors were measured to only 12 percent. [39]
21
22 Chapter 5. Discussion
adaptability, considering Skeleton is more of a blank slate than the other frameworks.
This means implementations of other more specific menu or navigation systems could
be implemented, resulting in already existing navigation systems to add dead weight
to the web application.
Modern devices offer different types of inputs. Stylus-style browsing modes were
popular during early smart-phone era, but has since faded away slowly. The main
input types of today is by touch and by mouse/keyboard combo, both which are
accommodated well within web development. But even though touch is one of the
mainly used input types, it is still difficult to detect if a device surely is a touch device
as Stu Cox explains in an article discussing detection of touch-screen device.[9] Cox
even ends this article by stating that “For layouts, assume everyone has a touch-
screen. Mouse users can use large UI controls much more easily than touch users
can use small (UI controls)“
One big difference between these two frequent input methods is hovering. Some-
times hovering an item or article gives more information about the link, or displays
information and sometimes even used as navigation. This behaviour makes it difficult
for touch devices to interact with the given element, with different actions depending
solely on the implementation and browser. [30]
This is an area that is probable to evolve in the future, and has space for maturity
in the relevance of more and more devices being touch-only.
Other Inputs
What input methods are used in future devices can only be speculated, and is very
hard to predict. An input method not used very often is voice-input or screen readers,
which is a very important aspect of web development that might be easy to pass on.
Both Foundation and Bootstrap offer implementations of hiding or showing content
specifically for screen-readers. This proves useful when implementing screen-reader-
support, but might also prove useful later on if people browse the web solely through
their voice and hearing. [4, 19]
There are a few other input methods that Stu Cox also mentions in his article[9],
for example
• Wii-remote browsing
These are all input methods that might become standardized in the future, however
only speculations and in some cases preparation can be made at this time.
5.3. Earlier research 23
been held over the years, together with trial-and-error that resulted in a optimized
experience for most users.
5.4.2 Frameworks
As can be said with most popular frameworks, the three discussed frameworks in
this research paper alls fills their space well, and are all good choices for different
projects. What can be noticed is their limitations and strengths, resulting in better
or worse implementations depending on the end result.
From the viewpoint of website responsiveness, the comparison becomes a little
clearer. Skeleton is a lightweight implementation putting a lot of weight on the devel-
oper, but helps the developer with cases such as the grid system or preset breakpoints
for easy device size management. It is a great starting point for developers when
creating a web application with responsiveness in mind, but does not offer a lot of
helpful functions more than the starting point it creates.
On the other hand since the Skeleton “framework“ is only based on a CSS file with
a few variables, it also has an upside. There might be browsers in future devices that
doesn’t support JavaScript, for example a smart fridge or a watch. This results in
the Skeleton webpages working wonderfully on these devices, while web applications
taking advantage of more advanced futures from frameworks incorporating JavaScript
instead cannot display as intended.
5.4. The Summarization 25
Between Foundation and Bootstrap, they both offer a multitude of more niche
techniques both for visual parts of the web application and methods to achieve a good
responsive result. Features such as Foundations automatically switching navigation-
bar [18] and Foundation Interchange automatically changing images to more appro-
priate sizes [16] are very helpful, while Bootstrap offers features such as figure caption
support that plays well with responsive reconstructions, a class to force an element
maintain a specific aspect ratio or tables becoming responsive at specific breakpoints.
Chapter 6
Conclusions and Future Work
When developing a webpage with lots of information, the developer takes for
granted that the user will scroll vertically. This is a point that will help future devices
by a margin, since the aspect ratio of the modern device then no longer is important.
If a newer device such as a fridge or a foldable smart-phone has a very long display,
the display will nicely and naturally display more information on the vertical axis
without any restructuring of content since the web page almost guaranteed already
27
28 Chapter 6. Conclusions and Future Work
is prepared to be scrolled vertically. [32] The only point that might affect how these
devices interact is if the web application has a footer or header, which might then
be pushed further to the upper or lower sides of the device and become (marginally)
harder to interact with.
Touch devices today are almost always vertical. [26] They fit better in our hand,
are easier to hold and easier to navigate menus with. In the future, more orientations
might (and in some cases already have) arise. Examples of this includes circular
displays for smart watches, large square displays or even large “landscape“ displays
in cars or other large devices like refrigerators. This offers an interesting approach for
responsiveness where a display usually used together with a mouse and keyboard now
instead should accomodate a touch-input for example. It could also be argued that
this will not make a difference to the web responsiveness implementations currently
available, although is worth mentioning as a difference nonetheless.
The resolution of a modern device varies greatly, mostly dependant on the size of the
display and the use-case. Some smart watches use a resolution of 360 by 360, while
some phones are up to 2700 by 1200 which makes the scaling of webpage elements very
important. [25, 34] All three frameworks that were examined during this research had
solutions to this, mainly being the customizable grid environment. Granted Skeleton
might have issues handling images well if not manually implemented since they do not
include any helper classes to this, but the other two frameworks both offered great
ways to handle images responsively. This includes automatically making images take
up a larger percentage of the viewport, among other points such as making a grid
module take up the entire space when met with a smaller resolution.
Another great way to handle differing resolutions is Foundations implementation
of tables. It is a great idea to prevent sideways scrolling data, especially on devices
with smaller screens such as a smart watch. Foundation has solved this issue with a
helper class that stacks tables (Previously shown in figures 4.9 and 4.8), making them
easily navigated even on a small device. Bootstrap on the other hand implemented a
helper class making the table scrollable sideways, which can be great to maintain a
webpage structure but meanwhile is not very helpful in maintaining a legible website
on a small device.
When instead using a device with a higher resolution (horizontally measured,
since height is not taken into account) some frameworks are hindered by their design
or responsiveness choices. Skeleton and Bootstrap both decided to set the max-
width of their grid to 960 and 1160 pixels respectively on a larger display, adding
whitespace to any viewport larger than that size. This can in the long term be seen
as a negative measure, considering device resolution has historically always risen. A
better approach might be Foundations, which is instead of setting the grid margins
to a set width instead dynamically changes the width on smaller screens, always
taking up a measurable width even if the display is very high resolution. [11, 21, 44]
6.1. Questions & Responses 29
To summarize
As can be seen in the figure 6.2, the popular frameworks researched in this report
handle most factors well. This translates to also being able to handle unique or
differing devices, depending on what is different. When it comes to resolution, layout
and content the frameworks contain lots of functions to help the developer create a
responsive design. The difficulty might arise when the device has a differing input
method (for example, a ) or when a device screen is so large that the webpage
mistakes it for a desktop, resulting in the wrong layout showing.
Also worth mentioning is that modern frameworks have no discernable ways of
detecting either aspect ratio or rotation of the device. This is not an issue currently,
30 Chapter 6. Conclusions and Future Work
but might become an issue if a device interacts differently depending on these factors.
Mobile-first
A mobile-first approach will always be a good technique to start off with when
implementing a web page that should interact well with modern devices. On the
one hand, mobile first implementations will lead to lighter workloads for smaller
devices since they do not have to restructure the entire web page. This both saves
bandwidth (which almost exclusively negatively affects mobile users), but also time
for the webpage to load in. Now, when almost 50% of people browse the web on
their phones [8], the time or bandwidthsaved will just become greater and greater.
Although on the other hand, some people argue that a mobile-first approach
is not enough. [27] In the article “Mobile First Is Just Not Good Enough“, Levin
& Mesibov argues that “It is not accurate to assume that mobile is the primary
experience.“ Levin & Mesibov’s point is that not every web page is assumed to be
used on a phone mainly, and instead to develop specific scenarios depending on the
end user to follow and to adapt each experience to those scenarios.
This can be especially noticed later on in the article, where Levin & Mesibov
discusses this viewpoint and claims that “We assume that every project needs to
be mobile-friendly; so, when budgets decrease, mobile first does become mobile-only.
[...] But the choice isn’t as simple as mobile or desktop. Many users switch devices
mid-task, making it even more vital that we focus our content and create consistency
across the experiences.“ Granted, this implementation style is both more extensive
and therefore expensive, although creates a much more accustomed web application
that fits more appropriately with its use-cases.
Existing techniques
Many of the earlier discussed techniques will implement very well with future devices.
These are the techniques which i deem most important in the reference of differing
devices.
• A good mobile-first approach will greatly increase the usability for the web page
on modern devices. Adapting a large web page for smaller devices will always
be more difficult than the other way around, and will simplify the process of
trying to make your web application fit as many unique devices as possible.
However as mentioned earlier, this method might come to change when even
more devices comes to market.
• A programming practice that does not aim for a specific device or group of
devices. As discussed already back in 2010 by Ethan Marcotte [12], it is im-
portant not to aim to create a specific web page for a specific device, which
risks becoming a cat-and-mouse chase. Instead the developer should focus on
creating a responsive web page that adapts to its device-width and input types.
Advantages
• By not developing to a specific device, the developer has less maintaining to
do during production
Disadvantages
• Some devices blur the lines between portable or stationary, resulting in diffi-
culty when deciding what to display
• The list of different devices grows longer each day, which might result in main-
tenance work
6.2. Developing for modern devices 33
35
36 BIBLIOGRAPHY
[31] ——, “Browser detection using the user agent,” 2022-05-13, accessed: 2022-
06-14. [Online]. Available: https://developer.mozilla.org/en-US/docs/Web/
HTTP/Browser_detection_using_the_user_agent
[32] D. Milenka, “Responsive web development for the future,” 2020-
07-14, accessed: 2022-06-14. [Online]. Available: https://uxdesign.cc/
responsive-web-development-for-the-future-41e9ea381a10
[33] L. Pete, “Responsive web design basics,” 2020-05-14, accessed: 2022-01-15.
[Online]. Available: https://web.dev/responsive-web-design-basics/
[34] “Samsung galaxy watch - specs,” Samsung, 2021, accessed: 2022-03-04. [Online].
Available: https://www.samsung.com/global/galaxy/galaxy-watch/specs/
[35] “Samsung galaxy z fold3 5g - specs,” Samsung, 2021, accessed: 2022-03-04. [On-
line]. Available: https://www.samsung.com/global/galaxy/galaxy-z-fold3-5g/
specs/
[36] B. Shreya, “Top 5 css frameworks for developers and designers,” 2021-06-21,
accessed: 2022-04-10. [Online]. Available: https://www.browserstack.com/
guide/top-css-frameworks
[37] “When is it right to assume the ipad layout will be the same
as the desktop?” StackExchange, 2016, accessed: 2022-06-14.
[Online]. Available: https://ux.stackexchange.com/questions/37320/
when-designing-a-responsive-layout-is-it-right-to-assume-the-ipad-layout-will-be
[38] “Differentiating iphones and ipads on desktop view,” StackOverflow, 2020,
accessed: 2022-06-14. [Online]. Available: https://stackoverflow.com/questions/
59988384/differentiating-iphones-and-ipads-on-desktop-view
[39] Statcounter, “Screen resolution stats, worldwide,” 2018, accessed: 2022-01-15.
[Online]. Available: https://gs.statcounter.com/screen-resolution-stats/
[40] H. Stephen, “There is no mobile web,” 2011-01-07, accessed: 2022-
01-15. [Online]. Available: https://www.the-haystack.com/2011/01/07/
there-is-no-mobile-web/
[41] S. Sunny, “"mobile first" is a dumb strategy,” 2020-06-19, ac-
cessed: 2022-06-14. [Online]. Available: https://javascript.plainenglish.io/
3-facts-you-should-know-about-user-agent-a476251ee3b5
[42] S. K. Taivalsaari Antero, Mikkonen Tommi, “Liquid software manifesto:
The era of multiple device ownership and its implications for software
architecture,” 2014-07-21, accessed: 2022-02-10. [Online]. Available: https:
//ieeexplore.ieee.org/document/6899235
[43] ThemeSelection, “Best css frameworks to look forward in 2021,” 2022-01-27,
accessed: 2022-04-10. [Online]. Available: https://dev.to/theme_selection/
best-css-frameworks-in-2020-1jjh
[44] O. M. Thornton Jacob, “Bootstrap,” 2021, accessed: 2022-02-05. [Online].
Available: https://getbootstrap.com/
[45] M. T. Voutilainen Jari-Pekka, Salonen Jaakko, “On the design of a responsive
user interface for a multi-device web service,” 2015-05-16, accessed: 2022-01-15.
[Online]. Available: https://ieeexplore.ieee.org/abstract/document/7283029
[46] C. T. Wium Lie Håkon, “Media queries - w3c working draft, 4
apr 2001,” 2001-04-4, accessed: 2022-04-16. [Online]. Available: https:
//www.w3.org/TR/2001/WD-css3-mediaqueries-20010404/Overview.html
Faculty of Computing, Blekinge Institute of Technology, 371 79 Karlskrona, Sweden